回答

收藏

Oracle ProC插入值((选择``))

技术问答 技术问答 232 人阅读 | 0 人回复 | 2023-09-12

在Oracle 10g上运行Pro * C。$ u- s3 q/ v' o: F
我正在寻找一个插入语句values子句中的子查询sql查询完全有效,可以TOAD但是Pro * C无法解析该查询。( v$ ]5 w1 A2 q* X5 M; O
EXEC SQL INSERT INTO TARGET_ATTACHMENT   TARGET_ID          FILENAME     VALUES        :targetID,  SELECT CREATED_FLAG from TARGET t where t.TARGET_ID = :targetID ) || '.tif       )若我删除:# [0 l  D' B0 S% [) K( f/ q
( SELECT (CREATED_FLAG || DISPLAY_ID) from TARGET t where t.TARGET_ID = :targetID ) ||**".Pro * C编译器可以正常工作,一切都可以按预期编译和操作。# u& e# f  c6 v# Y" v9 s
若我不删除:Pro * C编译器会导致语法错误。" |/ P! A5 u; }% N
1>Syntax error at line 128,column 12,file        d:\SVN\...\TA.pc:1>Error at line 128,column 12 in file d:\SVN\...1>...\TA.pc1>       select CREATED_FLAG from target t where t.TARGET_ID = :targetID )1>...........11>CC-S-02201,Encountered the symbol "CREATED_FLAG" when expecting one of the fol1>lowing:1>  ( ) *   - / . @ | at,day,hour,minute,month,second,year,这是个问题,因为我希望Pro * C编译器可以在值范围内查询:5 X4 q7 R0 O: ?7 b1 G
IE。. d0 T2 e4 S2 m7 i
INSERT into table1 (col1) values ( (select t2.singleCol from table2 t2 where t2.priKey = :priKey) )这是Pro * C预期行为吗?还是应该在values支持子查询查询?
" q+ u# h! \0 _& ?: d7 L                                                               
+ V- E/ B2 J! `% c  n$ \    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则