Oracleストアド・プロシージャのINSERTの例

OracleストアドプロシージャのINSERTの例

OracleデータベースでのINSERTストアドプロシージャの例を次に示します。

1. テーブルSQLスクリプト

DBUSERテーブル作成スクリプト。

CREATE TABLE DBUSER (
  USER_ID       NUMBER (5)    NOT NULL,
  USERNAME      VARCHAR2 (20)  NOT NULL,
  CREATED_BY    VARCHAR2 (20)  NOT NULL,
  CREATED_DATE  DATE          NOT NULL,
  PRIMARY KEY ( USER_ID )
 )

2. ストアドプロシージャ

ストアドプロシージャ。4つのINパラメータを受け入れ、テーブル「DBUSER」に挿入します。

CREATE OR REPLACE PROCEDURE insertDBUSER(
       p_userid IN DBUSER.USER_ID%TYPE,
       p_username IN DBUSER.USERNAME%TYPE,
       p_createdby IN DBUSER.CREATED_BY%TYPE,
       p_date IN DBUSER.CREATED_DATE%TYPE)
IS
BEGIN

  INSERT INTO DBUSER ("USER_ID", "USERNAME", "CREATED_BY", "CREATED_DATE")
  VALUES (p_userid, p_username,p_createdby, p_date);

  COMMIT;

END;
/

3. PL / SQLからの呼び出し

PL / SQLから次のように呼び出します。

BEGIN
   insertDBUSER(1001,'example','system',SYSDATE);
END;

Result
レコードはinsertDBUSERストアドプロシージャを介してDBUSERテーブルに挿入されます。