Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Prozedur in Oracle wird nicht ausgeführt

Wenn Sie alles, was Sie gezeigt haben, als Skript ausführen, benötigen Sie einen / nach jedem unabhängigen Abschnitt des PL/SQL-Codes:

CREATE OR REPLACE PROCEDURE getDBUSERByUserId(
   p_userid IN DBUSER.USER_ID%TYPE,
   o_username OUT DBUSER.USERNAME%TYPE,
   o_createdby OUT  DBUSER.CREATED_BY%TYPE,
   o_createddate OUT DBUSER.CREATED_DATE%TYPE)
 IS
BEGIN
 SELECT USERNAME , CREATED_BY
 INTO o_username, o_createdby
 FROM  DBUSER WHERE USER_ID = p_userid;
END;
/

DECLARE
 o_username DBUSER.USERNAME%TYPE;
 o_createdby DBUSER.CREATED_BY%TYPE;
 o_date DBUSER.CREATED_DATE%TYPE;
BEGIN
 GETDBUSERBYUSERID(1001,o_username,o_createdby,o_date);
 DBMS_OUTPUT.PUT_LINE('username :  ' || o_username);
 DBMS_OUTPUT.PUT_LINE('createdby :  ' || o_createdby);
END;
/

Diese Dokumentation wenn für SQL*Plus, gilt aber meistens auch für SQL Developer.