小编典典

为 SQL Server 表自动生成 INSERT 语句的最佳方法是什么?

all

我们正在编写一个新应用程序,在测试时,我们需要一堆虚拟数据。我已经通过使用 MS Access 将 excel 文件转储到相关表中来添加该数据。

每隔一段时间,我们想要“刷新”相关表,这意味着将它们全部删除,重新创建它们,然后运行保存的 MS Access 追加查询。

第一部分(删除和重新创建)是一个简单的 sql 脚本,但最后一部分让我畏缩。我想要一个包含一堆 INSERT 的设置脚本来重新生成虚拟数据。

我现在有表格中的数据。从该数据集中自动生成大量 INSERT 语句的最佳方法是什么?

我能想到的唯一方法是将表格保存到 Excel 表,然后编写一个 Excel 公式为每一行创建一个 INSERT,这肯定不是最好的方法。

我正在使用 2008 Management Studio 连接到 SQL Server 2005 数据库。


阅读 128

收藏
2022-03-03

共1个答案

小编典典

Microsoft 应该宣传 SSMS 2008 的此功能。您正在寻找的功能内置于“ 生成脚本
”实用程序中,但该功能默认情况下处于关闭状态,并且必须在编写表格脚本时启用。

这是为表中的所有数据生成语句的快速运行INSERT,不使用 SQL Management Studio 2008 的脚本或插件:

  1. 右键单击数据库并转到 Tasks > Generate Scripts
  2. 选择要生成脚本的表(或对象)。
  3. 转到 设置脚本选项选项 卡,然后单击 高级 按钮。
  4. 常规 类别中,转到 要编写脚本的数据类型
  5. 有 3 个选项: Schema OnlyData OnlySchema and Data 。选择适当的选项并单击 OKSqlDataOptions

然后,您将直接从 SSMS 中获取数据的CREATE TABLE语句和所有语句。INSERT

2022-03-03