INSERT INTO myTable(SELECT 2,mem_type_actor('Phillip D'Onofrio,Val Kilmer')来自DUAL)
我想在myTable中插入这些记录,但由于D'Onofrio的引用,我得到了错误:
ORA-00907: missing right parenthesis
我该如何解决?
我编辑了我的问题:
事实上,我没有这样的记录,我有这些sql代码:
M_TERMS=Rocky,Carroll ; Chris,O'Donnell ; Daniela,Ruah ;
M_STR:=REPLACE(REPLACE(''''||M_TERMS||'''',',',' '),';',',');
M_SQL:='INSERT INTO myTable (SELECT '||M_ID||' , mem_type_actor ('||M_STR||') FROM DUAL)';
所以当记录像O'Donnell那样,ORA-00907:错过右括号 发生
答案 0 :(得分:4)
你应该使用
INSERT INTO myTable
(SELECT 2, mem_type_actor ('Phillip D''Onofrio ,Val Kilmer') FROM DUAL)
使用两个单引号代替一个内部字符串。
答案 1 :(得分:3)
使用两个单引号:D''Onofrio
。
答案 2 :(得分:3)