ORACLE INSERT QUERY

时间:2016-08-24 09:59:47

标签: sql oracle

我使用ORACLE 10g作为数据库。

考虑两个表:
1.)ABC以列A为主键,其余可以保持空值
2.)XYZ,列W作为主键,其余可以保持空值

同行的数据类型也相同 示例:A = W,B = X,C = Y,D = Z
等于表示数据类型相同

以下查询完全正常运行

INSERT INTO ABC(A ,B,C,D) 
VALUES ('klm'  , (SELECT X FROM XYX WHERE W ='SOME_VALUE') , 'Dsl' , 'rwz')

但以下查询不起作用..如果有人可以帮我解决?

INSERT INTO ABC(A,B,C,D) 
VALUES ( (SELECT W, X , Y , Z FROM XYX WHERE W ='SOME_VALUE') )

注意:W的值不在表ABC中。没有约束违规

  

错误报告:SQL错误:ORA-00947:值不够   00947. 00000 - “价值不够”

请解释??

插入ABC(A,B,C,D)VALUES('123',(从XYZ中选择X,Y,Z,其中W ='same_value'))我需要这个通用事物的解决方案

0 个答案:

没有答案