将特定列导出到 INSERT 语句

Rob*_*bin 6 sql-server t-sql unit-test

有没有办法将表中的特定列和固定数量的行导出到 INSERT 语句?

我正在尝试基于大型生产表为单元测试生成这些,因此在 SQL Server Management Studio 中使用“生成脚本”之类的东西是不可能的。

有一些工具可以做到这一点,但在 MySQL 中如此微不足道的东西在 SQL Server 中不应该那么复杂(至少我不希望如此)。

Kin*_*hah 4

使用导入/导出向导,而不是导出整个表,而是选择 sql 导出特定的行和列。

您可以编写如下 sql:select column1, column2 from Table1 where some_condition或者如果您不关心特定数据,则可以使用 top 命令提取所需的任意数量的行。

编辑:下面是导入导出向导的屏幕截图(从 SSMS 启动它):

在此输入图像描述

在此输入图像描述

在此输入图像描述

编辑:

@Robin 在你的情况下,你可以做两件事 -

  1. 使用Redgate 的 sql 数据生成器之类的工具来生成测试数据——或者——
  2. 您可以按照我的建议进行 1 次数据导入,然后备份数据库,对于其余的测试,您可以继续从备份恢复数据库(请记住,您导入的数据不会更改)。我想不出另一种方法来实现你想要实现的目标,所以将保留这个供其他人回答......