在sql server选项中的表中插入值

时间:2014-07-03 12:21:30

标签: tsql

假设我有一个表学生有两个不可为空的列a& b类型为整数和两个可空列c&整数类型的d

当我编写查询Insert into student (a,b) values (1,2)时,它可以正常工作。

但是当我写一个查询Insert into student Select 1,2

不起作用。我的想法是它应该工作,因为我有两个不可为空的列,我提供两个输入值,这些值应该自动进入不能为空的列。

1 个答案:

答案 0 :(得分:2)

如果未指定要插入的列,则假定为插入所有列。这意味着,如果SELECT中的列数与表格中的列数不同,则会出现列数不匹配的错误。

请注意,对此的例外是IDENTITY列,您不应该自己插入数据,或者列出已定义默认值的列。

您可以参考documentation on MSDN以获得更好的主意。