PLS-00103 在 PL/SQL Developer 中发生错误
PLS-00103 在 PL/SQL Developer 中发生错误
注意:在使用Oracle SQL Developer时,我没有遇到这个问题。但这里不允许使用这个程序。所以我必须找到一种在PL/SQL Developer中解决这个问题的方法。
当尝试使用PL/SQL Developer(PL/SQL Developer - 这个程序)动态删除表并使用创建语句创建新表时,我一直遇到以下错误:
PLS-00103: 遇到符号"/",符号"/"被忽略PLSQL。
这是由于动态SQL末尾的"/"导致的。
如果我从末尾删除"/",我会收到错误:
遇到符号"CREATE"。
在PL/SQL Developer中解决这个错误的最佳方法是什么?
谢谢:
DECLARE VE_TABLENOTEXISTS EXCEPTION; PRAGMA EXCEPTION_INIT(VE_TABLENOTEXISTS, -942); PROCEDURE DROPTABLE(PIS_TABLENAME IN VARCHAR2) IS VS_DYNAMICDROPTABLESQL VARCHAR2(1024); BEGIN VS_DYNAMICDROPTABLESQL := 'DROP TABLE ' || PIS_TABLENAME; EXECUTE IMMEDIATE VS_DYNAMICDROPTABLESQL; EXCEPTION WHEN VE_TABLENOTEXISTS THEN DBMS_OUTPUT.PUT_LINE(PIS_TABLENAME || ' 不存在,跳过...'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SQLERRM); RAISE; END DROPTABLE; BEGIN DROPTABLE('foo.foo_table'); END DROPTABLE; / CREATE TABLE foo.foo_table AS ( SELECT STUFF, MORE_STUFF FROM not_foo_table ); SELECT * FROM foo.foo_table;