Oracle研修6:インデックス, シーケンス, トランザクションとロック , セーブポイント

インデックス:索引

大量のデータから表を効率よく検索するための「索引」みたいな機能のこと。
*表ごとに設定するデータベースオブジェクト

【インデックスの作成 】

<作成例>

【インデックスの削除】

シーケンス:連番を発行

自動的に連番を発行するデータベースオブジェクト

【シーケンスの作成 】

*シーケンス名以下のオプションは省略可。

【 シーケンスの利用】

擬似列名 説明
CURRVAL 順序の現在の値が返される
NEXTVAL 順序が増減され、新しい値が返される
(データを登録する際に利用)

↑ 例: 主キー列の後ろに「.NEXTVAL」と記入

<作成例>

【シーケンスの削除】
*一度削除すると、ROLLBACK で戻ることができない。
*シーケンスの値を変更 → 一度シーケンスを削除し、新たに作成。

トランザクションとロック

・トランザクション → 複数の処理をまとめて扱う機能
(処理中のデータに問題が発生した場合、変更前の状態に戻すなど。)

COMMMIT(コミット) → 結果をデータベースに反映させること
ROLLBACK(ロールバック) → 反映せずに、元に戻すこと

 

matome_2015_12_16_03

自動コミット機能 *現場ではOFFに!!

↑ *コミットをするとデータを更新前に戻すことが基本できないため

セーブポイント

ROLLBACK で処理を戻す際に、どの時点の状態まで戻すかという位置を SAVEPOINT で指定。

【セーブポイントの設定】

【指定するセーブポイントまでロールバック 】

 

関連記事

Oracle研修1:データベースの概要とOracleの特徴、ユーザーと権限

Oracle研修2:SQLのデータ型。テーブルの作成、変更、削除。 列の追加、変更、削除。

Oracle研修3: INSERT 文、SELECT文、UPDATE 文、DELETE文、TRUNCATE 文

Oracle研修4:曖昧検索、集約関数、重複、グループ化、並び替え

Oracle研修5:演算子、結合、ビュー、サブクエリ