你只需要在INSERT之后,填写1000次,如下所示:
INSERT INTO dbo.Cusomers(Id, FirstName, LastName) VALUES(1, 'Mohamed', 'Mousavi')
GO 1000
它将创建一个包含 1000 行的相同行的表。
另一种解决方案是,您可以使用一些数据填充表的开头行,然后通过反复重复开始行来填充表的下一行,这意味着您自己填充表:
INSERT INTO dbo.Customers
SELECT * FROM dbo.Customers
GO 10
在这种情况下,一个或多个列是标识(如果是自动增量,意味着它们接受唯一值),你只是不将其放在查询中,例如 Id 在 dbo 中。Customer是身份,查询如下所示:
INSERT INTO dbo.Customers
SELECT FirstName, Last Name FROM dbo.Customers
GO 10
而不是:
INSERT INTO dbo.Customers
SELECT Id, FirstName, Last Name FROM dbo.Customers
GO 10
否则,您会遇到以下错误: An explicit value for the identity column in table 'dbo.Customers' can only be specified when a column list is used and IDENTITY_INSERT is ON.
注意:这是一种算术级数,所以它会持续一点,不要在 前面使用大数字。GO 如果希望有一个表,填充得更详细一点,那么这次可以通过执行一个简单的查询并按照以下步骤实现相同的方法:
1.选择一个行数量非常多的表,比如dbo. Customer
2.右键单击它并选择Script Table as > Create To > New Query Editor Window
3.将新表命名,像dbo.CustomersTest,现在您可以执行查询,以具有与 dbo. Customer 结构类似的新表
注意:请记住,如果已提交标识,请更改它Identity Specification to No,因为您应该通过原始表的数据重复填充新表。
4.运行以下查询,它将运行 1000 次,您可以将其改的更多或者更少,但请注意,它可能基于计算机硬件持续最小值:
INSERT INTO [dbo].[CustomersTest]
SELECT * FROM [dbo].[Customers]
GO 1000
5.过了一会儿,你有一个表,其中有虚拟行!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。