【发布时间】:2011-10-23 16:40:45
【问题描述】:
我有一个只有一个标识列的表。向只有一个标识列的表中插入行的 SQL 命令是什么,我想在其中使用标识列的自动生成?
我试过了
INSERT INTO TableName
INSERT INTO TableName () VALUES ()
INSERT INTO TableName (Id) VALUES (DEFAULT)
没有在 SQL Server 2008 R2 中工作。 Id 是一个标识列。
【问题讨论】:
-
关键字
DEFAULT或NULL都可以用作 INSERT 语句中的值 - 如果列存在默认约束,它们会触发数据库使用默认约束。 -
例外它们在这种情况下不起作用,因为您无法将它们插入标识列。
-
谢天谢地,SQL Server 2012 中的 ANSI 序列已弃用 IDENTITY,因此事情可以恢复正常:p
-
什么是在 SQL Server 2012 中替换标识列?
-
@OMGPonies 我没有看到任何关于 IDENTITY 被弃用的信息,尽管我确实查看了 Denali 中弃用的功能列表。我认为序列是更好的途径,但我想 IDENTITY 列会出现一段时间。
标签: sql-server