【发布时间】:2020-08-07 04:44:09
【问题描述】:
我有一个新表(称为“NewTable”),它是使用 2 个表(t1 和 t2)中的数据创建的。我正在尝试将 t1 和 t2 中的任何新数据插入“NewTable”。请看下面的例子。
新表:
id | col1 | col2 | col3 | col4 |
t1:
id | col1 | col2 | col5 | col6 |
t2:
id | col3 | col4 | col7 | col8 |
我的脚本是:
INSERT NewTable (id, col1, col2, col3, col4)
SELECT t1.d1, col1, col2, col3, col4
FROM NewTable left join t1 on NewTable.id = t1.id left join t2 on t1.id=t2.id
WHERE t1.id is NULL;
我收到此错误消息
Cannot insert the value NULL into column 'id', table 'New Table'; column does not allow nulls. INSERT fails.
我觉得我的脚本已关闭。我应该使用右连接而不是左连接还是应该输入“WHERE NewTable is NULL”?
感谢您的帮助
【问题讨论】:
-
为什么需要将数据复制到新表中?为什么你认为 SQL 是错误的——会发生什么?您是否使用 Access 查询设计器进行构建?
-
我已经更新了我的问题。很抱歉造成混乱
-
用您使用的数据库标记问题。
标签: sql sql-server sql-insert