PL/SQLとは
PL/SQLはSQLを手続き型言語として拡張させてる、オラクル社が提供している言語です。
PL/SQLプログラムの種類
PL/SQLは、ストアド・サブプログラムと無名のPL/SQLプログラム(以下、「無名ブロック」と記載する)とに分類することができます。
ストアド・サブプログラムとはPL/SQLに名前をつけて解析済みの状態でOracleに格納したものをいいます。これに対して無名ブロックは、サーバ(Oracle)にプログラムを格納しないPL/SQLをいいます。
ストアド・サブプログラム
ストアド・サブプログラムは、「スタンドアロン・サブ・プログラム」と「パッケージ・サブプログラム」の2つに分類することができ更に、スタンドアロン・サブプログラムは、「ストアド・プロシージャ」と「ストアド・ファンクション」に分類できます。
実際のプログラムを記述する上では、「ストアド・プロシージャ」と「ストアド・ファンクション」「ストアド・パッケージ」の3つを覚えておけばOKです\(^o^)/
ストアド・プロシージャ
ストアド・プロシージャの作成の構成は、以下のような感じです。
CREATE OR REPLACE PROCEDURE <プロシージャ名> IS <宣言部> BEGIN <実行部> EXCEPTION <例外処理部> END <プロシージャ名>; /
↓↓↓実装例はこっちに記事書きました。
ストアド・ファンクション
ストアド・ファンクションの作成の構成は、以下のような感じです。
CREATE OR REPLACE FUNCTION <ファンクション名> RETURN <データ型> IS <宣言部> BEGIN <実行部> RETURN <戻り値>; EXCEPTION <例外処理部> END <ファンクション名>; /
↓↓↓実装例はこっちに記事書きました。
ストアド・パッケージ
ストアド・パッケージの作成の構成は、以下のような感じです。
~パッケージ仕様部~
CREATE OR REPLACE PACKAGE <パッケージ名> IS <仕様部> END [<パッケージ名>]; /
~パッケージ本体~
CREATE OR REPLACE PACKAGE BODY <パッケージ名> IS <本体> BEGIN <実行部> EXCEPTION <例外処理部> END [<パッケージ名>]; /
↓↓↓実装例はこっちに記事書きました。
無名ブロック
無名ブロックの作成の構成は、以下のような感じです。
DECLARE <宣言部> BEGIN <実行部> EXCEPTION <例外処理部> END; /
↓↓↓実装例はこっちに記事書きました。
コメント