2016-12-06 15 views
0

참고 : Oracle SQL Developer를 사용할 때이 문제가 발생하지 않습니다 :: -하지만 여기서는 표준이 아닙니다. 그래서 내가 PL/SQL Developer에서이 작업을 수행 할 수있는 방법을 찾아야합니다PL/SQL Developer에서 PLS-00103 오류가 발생했습니다.

PL/SQL 개발자 (PL/SQL 개발자 - 프로그램)를 사용하려고 시도하는 후 새가 문을 작성하여 만들 동적으로 테이블을 드롭 I 지속적으로 오류로 실행 :
PLS-00103을 : 기호 "/"기호 "/"이것은 때문이다 PLSQL

무시 발생하는 "/"동적 SQL의 끝에.

내가 끝에서 "/"내가 오류가 발생 제거하는 경우 : 기호가 발생

PL/SQL 개발자 안쪽이 오류를 해결하기 위해 가장 좋은 방법은 무엇입니까 "CREATE"?

는 감사 :

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 
; 

답변

1

내가 너무 PLSQL 개발자가 있습니다. 게시하는 방식으로 프로 시저를 컴파일하려고하면 같은 오류가 발생하지만 "/"앞에 공백을 제거하면 정상적으로 작동합니다. 마치 "/"를 인식하지 못하는 것처럼.

그래서, 난 당신이 이것을 변경하는 것이 좋습니다 :이를 위해

END DROPTABLE; 
/

:

END DROPTABLE; 
/
+0

HAHAHA! 공간! 나는 SQl에 공백이 없어. – BGDev