-2

コンパイルできません。何が問題なのかわからない。助けてください。

    CREATE OR REPLACE PROCEDURE VERIFY

    IS 
    LNO DRIVER.L#%TYPE;

    BEGIN
       SELECT L# INTO LNO
       FROM ADMIN JOIN DRIVER 
       ON ADMIN.E# = DRIVER.E#(+);

       IF LNO != NULL THEN
             DBMS_OUTPUT.PUT_LINE("NOT NULL");
       END IF;

    COMMIT;

    END VERIFY;
4

2 に答える 2

3

(+)ONの一部には使用できませんJOIN

WHEREセクションで使用します。

SELECT L# 
INTO LNO
FROM ADMIN, 
     DRIVER 
WHERE ADMIN.E# = DRIVER.E#(+);

または使用LEFT [OUTER] JOIN

SELECT L# 
INTO LNO
FROM ADMIN
LEFT JOIN DRIVER ON ADMIN.E# = DRIVER.E#;

詳細はこちら: http://docs.oracle.com/cd/B19306_01/server.102/b14200/queries006.htm#sthref3175

于 2013-05-29T11:31:27.810 に答える
1

これを試して:

DBMS_OUTPUT.PUT_LINE('NOT NULL');

それ以外の

DBMS_OUTPUT.PUT_LINE("NOT NULL");

(つまり、一重引用符)

于 2013-05-29T09:40:22.267 に答える