繁体   English   中英

将数据从一个表更新到另一个表失败

[英]Update data from one table to another failing

我在两个系统中有两个表具有相同的结构。 我想将一个表中的数据更新为其他表

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

两个表中的两列都是空列,但我最终会遇到异常

无法将值NULL插入列列不允许空值。 INSERT失败。

我相信问题是你在Table1上有NOT NULL约束,你应该放弃它:

ALTER TABLE dbo.Table1 ALTER COLUMN VIEW_CD <columnType> NULL

或这个:

ALTER TABLE dbo.Table1 ALTER VIEW_CD DROP NOT NULL

然后再次运行查询。

尝试这个 :

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值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM