▲ ▼ SQL でのデータ管理
▲ SQL
データ操作言語 (DML (Data Manipulation Language)) に属する SQL 文を利用し,Oracle Database のデータを操作することができる。
データ操作を行う SQL 文は以下の通り。
(詳しくは Bronze 対応の参考書やネットドキュメントをご参照ください)
- SELECT 文
- データの問い合わせを行う。
SELECT 列名 ← 抽出する列名 FROM 表名 ← 抽出対象の表名 [WHERE 抽出条件] ← 抽出する条件式 :
- INSERT 文
- データの新規追加を行う。
INSERT INTO 表名 [ (列名 [, …]) ] ← 追加対象の表 (と列) VALUES ( 値 [, …]); └← 列名を定義した場合,INSERT INTO の列数と VALUES の列数は同一にする
- UPDATE 文
- データの更新を行う。
UPDATE 表名 ← 更新対象の表 SET 列名 = 値 ← 更新対象の列 [, 列名 = 値, …] WHERE 抽出条件; ← 抽出した行全てを SET で更新
- DELETE 文
- データを削除する。
DELETE FROM 表名 ← 削除対象の表 [ WHERE 抽出条件 ]; ← 抽出した行全てを削除する
▲ トランザクション
トランザクションとは,「読み取り一貫性」を保証する処理のことである。
DML 文を発行してデータに対し追加 / 更新 / 削除操作を行うとトランザクションが開始し,変更後の値 (や追加行) は別のユーザから確認することはできない。また,変更された行に対し別のユーザが変更を加えようとしても,現行のトランザクションが終了するまで待機状態になる。
現行のトランザクションを終了させるには,トランザクションを開始したユーザ (最初に DML 文を発行したユーザ) が以下のコマンドをを実行する必要がある。
コマンド名 | 詳細 |
COMMIT | DML 文によって変更された値 (や追加行) を確定する。 |
ROLLBACK | DML 文によって変更された値 (や追加行) を取り消し,変更前の状態に戻す。 |