首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

SQL语句错误

2014-01-28 
假设表A得结构为A( a,b,c,d )表B得结构为B(a,c,d,e,f),并且(a,c)构成了A的主键;A表中的部分数据已经导入到B

假设表A得结构为A( a,b,c,d )表B得结构为B(a,c,d,e,f),并且(a,c)构成了A的主键;A表中的部分数据已经导入到B表
要求:将A表中未导入B表的数据继续导入;已经导入的不能再次执行,否则会造成(a,c)值有在表B中不唯一。

下面是我写的语句,SQL语句错误
Insert into B( a,c,d ) select a,c,d from A where a!=B.a or c!=B.c

请教该怎么修改



------解决方法--------------------------------------------------------
Insert into B( a,c,d )
select a,c,d from A
where not exists
(select * from B where a!=A.a and c!=A.c)
------解决方法--------------------------------------------------------
Insert into B( a,c,d )
select a,c,d from A
where not exists
(select * from B where a=A.a and c=A.c)
 

        

热点排行