sql - 插入 id(自动生成,仅列)

标签 sql sql-server-2005

如果我不想在表中插入一行,而该表只包含一个带有自动生成 ID 的列,那么我的 SQL 语句 (MS-SQL) 应该是什么样子的?

以下两个查询将不起作用:

INSERT INTO MyTable (MyTableId) VALUES (Null)
-- or simply
INSERT INTO MyTable 

感谢任何提示。
sl3dg3

最佳答案

INSERT INTO MyTable (MyTableId) VALUES (Null)隐式地尝试在标识列中插入一个空值,因此这将不起作用,因为标识列可能永远不能为空,并且如果没有 SET 选项,您无论如何都无法插入任意值,而是可以使用:

INSERT INTO MyTable DEFAULT VALUES

关于sql - 插入 id(自动生成,仅列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5651171/

相关文章:

sql - 我怎样才能在 Postgres 9.5 中做一些更新插入

mysql - 优化 mysql 查询以查找所有重复条目

sql-server-2005 - 在 T-SQL 中不使用变量直接引用列值

sql-server-2005 - 添加链接服务器 - SQL Server 2005 - 稍后更改名称

sql - 来自 SQL Server 存储过程的 Excel 中的表以及工作簿中的参数字段

MYSQL:选择与多个表的多行相关的条目

mysql - 如何访问子选择中的外部列

sql - Service Broker 消息处理顺序

sql-server-2005 - 为什么 Microsoft SQL Server 在 CREATE 语句失败时隐式回滚?

sql-server - SQL Server 2005 使用表达式进行 Order BY