PL/SQLとSQLの種類

[Oracle][SQL]PL/SQLとSQLの種類

 OracleM@sterを目指すためにちょっとずつOracle(というかSQL)のエントリを増やしていく。超にわかなところから徐々にOracleM@sterをコーナーに追い詰めていこうと思います。

 というわけで題名の件。

PL/SQL

 OracleのOracleによるOracleのためのプログラミング言語。SQLに変数宣言やif文、for文exceptionなどを記述可能にしたプログラミング言語なのでSQLに分類されない。

 記述的にはこんな感じになる。

DECLARE
    宣言
BEGIN
    IF (条件) THEN
        処理
    END IF
EXCEPTION
    WHEN 例外条件 THEN
        処理
END

 次にSQLの種類。

SQLの種類

 SQLの操作は大きく四つに分けられて、

  • データを定義する言語: DDL(Data Definition Language)
  • データを操作する言語: DML(Data Manipulation Language)
  • データを制御する言語: DCL(Data Control Language)
  • トランザクション制御

 となっている。全部読んで字のごとくなんだけど初見だと略称から意味が出てこない; あと、若干略称からコマンドが出てこない事がある。コマンドは、

|*DDL|CREATE(作成)|ALTER(変更)|DROP(削除)|TRUNCATE(切捨て)| |

|*DML|SELECT(問い合わせ)|INSERT(挿入)|UPDATE(更新)|DELETE(削除)|MERGE(挿入更新)|

|*DCL|GRANT(権限付与)|REVOKE(権限削除)| | | |

|*トランザクション|COMMIT(コミット)|ROLLBACK(取り消し)|SAVEPOINT(RB位置指定)| | |

 こんな感じ。