Plsql PL/SQL Developer中的PLS-00103错误

Plsql PL/SQL Developer中的PLS-00103错误,plsql,plsqldeveloper,create-table,pls-00103,Plsql,Plsqldeveloper,Create Table,Pls 00103,注意:我在使用Oracle SQL Developer时没有此问题:-但它不是这里的标准。因此,我必须找到一种在PL/SQL Developer中实现这一点的方法 尝试使用PL/SQL developer(PL/SQL developer-程序)动态删除表,然后使用create语句创建新表时,我始终遇到错误: PLS-00103:遇到符号“/”符号“/”被忽略PLSQL 这是由于动态sql末尾的“/”造成的 如果我从末尾删除“/”,我将收到一个错误: 遇到符号“创建” 在PL/sqldevelo

注意:我在使用Oracle SQL Developer时没有此问题:-但它不是这里的标准。因此,我必须找到一种在PL/SQL Developer中实现这一点的方法

尝试使用PL/SQL developer(PL/SQL developer-程序)动态删除表,然后使用create语句创建新表时,我始终遇到错误:
PLS-00103:遇到符号“/”符号“/”被忽略PLSQL

这是由于动态sql末尾的“/”造成的

如果我从末尾删除“/”,我将收到一个错误: 遇到符号“创建”

在PL/sqldeveloper中,避免这个错误的最佳方法是什么

谢谢各位:

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 || ' NOT EXIST, SKIPPING....');
                        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
;

我有太多的PLSQL开发人员。 我尝试编译你的程序的方式,你张贴,我得到同样的错误,但如果我删除空白之前,“/”它工作良好;就像它不认识“/”一样

因此,我建议您改变这一点:

END DROPTABLE;
   /
为此:

END DROPTABLE;
/

哈哈哈!空间!我以前从未在SQl中使用过空格来引起这种问题。