如何解决ORA-00917 如果将带有转义单引号的 SQL 语句传递给 OCIStmtExecute
如果我尝试在 Oracle SQL Developer 中执行以下语句,我会成功。 (注意第一个插入语句的最后一个值。)
BEGIN
INSERT INTO attr_value
(predef_class,plan_nr,key1,key2,key3,key4,key5,type_id,item_id,access_type_id,str_val)
VALUES (0,10000001,1,1740,10242,'test''test');
INSERT INTO attr_value
(predef_class,10248,'');
INSERT INTO attr_value
(predef_class,dt_val)
VALUES (0,10237,'2000-01-01 00:00:00');
INSERT INTO attr_value
(predef_class,float_val)
VALUES (0,10111,25.281797);
INSERT INTO attr_value
(predef_class,in_val)
VALUES (0,10079,0);
END;
但是如果我将其传递给 ociap.h 中定义的 OCIStmtExecute 函数,则相同的语句会失败,并显示 ORA-06550 'Statement ignore' 和 ORA-00917 'Missing逗号'。
有人告诉我如何克服这个问题吗?
问候, 本
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。