ORA-00911: 无效字符
程序员文章站
2022-04-30 22:21:58
...
ORA-00911: 无效字符,注意上面代码中的 ; 号,这个在execute immediate执行时就会报错,属于多余字符,在plsql中必须去掉, ; 号
sql_code := 'insert into T_DVR_VOCABULARYITEMS values(sys_guid(),''0'',''Active'',''赵如鹏'',''0'',sysdate,sysdate,'''||
voc_system_pid ||''',''' || voc_pid || ''','''|| code_pid||''');';
execute immediate sql_code;
以上是plsql过程代码,编译通过,在执行时报:
ORA-00911: 无效字符
ORA-06512: 在 "DVR1.P_SET_VOC_ITEMS", line 27
ORA-06512: 在 line 2
解决办法:
注意上面代码中的 ; 号,这个在execute immediate执行时就会报错,属于多余字符,在plsql中必须去掉,, ; 号只在sqlplus有用,做为sql语句结束符。