我在两个系统中有两个表具有相同的结构。我想将一个表中的数据更新到其他
{{1}}
两个表中的两列都是空列,但最终会出现异常
无法将值NULL插入列列不允许空值。 INSERT失败。
答案 0 :(得分:1)
我认为问题是NOT NULL
上有Table1
约束,你应该放弃它:
ALTER TABLE dbo.Table1 ALTER COLUMN VIEW_CD <columnType> NULL
或者这个:
ALTER TABLE dbo.Table1 ALTER VIEW_CD DROP NOT NULL
然后再次运行查询。
答案 1 :(得分:0)
试试这个:
update Table1
set VIEW_CD = cmn.VIEW_CD,
VIEW_DETAIL = cmn.VIEW_DETAIL
FROM dbo.Table1 tbl
INNER JOIN dbo.Table2 cmn ON tbl.id = cmn.id
where VIEW_CD IS NOT NULL AND VIEW_DETAIL IS NOT NULL
上面将使用Table2中的所有记录更新Table1,其中记录不包含任何NULL值。