1

PL/SQLを学んでいるのですが、プロシージャを宣言するとき、パラメータの型を示すときに「IN」と「OUT」というキーワードを書かなければならないなど、いくつかの誤解に遭遇しました。Oracle のドキュメント Web サイトで手順の宣言を見たことがあります。場合によっては、パラメーター リストに IN が表示されます。

PROCEDURE double (
    original    IN  VARCHAR2,
    new_string  OUT VARCHAR2
  ) AS
  BEGIN
   new_string := original || original;
 END;

BEGIN
 DBMS_OUTPUT.PUT_LINE ....

また、IN がない場合もあります。

CREATE OR REPLACE PROCEDURE award_bonus (
  emp_id NUMBER, bonus NUMBER) AS
  commission    REAL;
  comm_missing  EXCEPTION;
BEGIN
  SELECT ....

また、キーワード「IS」と「AS」には違いがありますか?

4

1 に答える 1

6

Oracle PLSQL には、 、 、 の 3 つのパラメータ モードがINありOUTますIN OUTINモードの指定は必須ではありません。パラメーター mode を指定しない場合は、 と見なされINます。他の 2 つについては、モードを指定する必要があります。2 番目の例では、両方のパラメーターが考慮されINます。

ISおよびASキーワードのいずれかを使用できます。違いはありません。

詳細については、ドキュメントを確認してください。

于 2013-06-09T02:16:15.280 に答える