88

(在尝试回答另一个问题的过程中提出了这个问题)

考虑下面的 MS-SQL 表,称为 GroupTable:

组ID
--------
1  
2  
3  

其中 GroupID 是主键并且是一个标识列。

如何在不使用 IDENTITY_INSERT ON的情况下向表中插入新行(从而生成新 ID) ?

请注意:

INSERT INTO GroupTable() Values ()   

……行不通。

编辑:我们在这里谈论 SQL 2005 或 SQL 2008。

4

4 回答 4

132

这应该有效:

INSERT INTO GroupTable DEFAULT VALUES 
于 2009-05-11T22:13:17.507 回答
17

干得好:

INSERT INTO GroupTable DEFAULT VALUES
于 2009-05-11T22:14:04.727 回答
3

一次可以插入多行。

例如,插入 30 行。插入 GroupTable 默认值 GO 30

This will insert 30 rows by incrementing the identity column each time.

于 2016-10-28T11:35:13.013 回答
0

您可以尝试使用序列或类似的东西吗?您从序列中选择的位置,它将为您提供序列中的下一个值。

于 2009-05-11T22:12:22.220 回答