データベース

2021/3/11

ストアドプロシージャとは

ストアドプロシージャ ストアドプロシージャ(英:stored procedure)とは、データベースを操作する一連の処理(SQL文)をひとつのプログラムにまとめものです。 ストアドプロシージャはデータベース管理システム(DBMS)側に保存され、外部からは「プロシージャ名」を指定することでを実行させることができます。 ストアドプロシージャのイメージ例 クライアントサーバシステムでは、クライアントからデータベースサーバにあるデータベースに対しSQL文を実行します。 以下の図例では、データベース機能を提供するデ ...

2021/3/10

ロックとは(占有ロックと共有ロック)

ロック(lock) 排他制御とは 排他制御とは、共有資源に対して複数のアクセスが同時に発生しても問題なく動作できる制御のことをいいます。 例えば、次のように複数の人が同時に共通資源であるファイルに書き込みを行った場合、排他制御をおこなっていれば、データの整合性が保たれます。(共有ファイルに「BBB」と「CCC」が両方追加される)   しかし、排他制御をおこなっていないと次のように整合性が保たれないデータになってしまう危険性があります。(後から更新した方のデータとなり、BBBが反映されていない) ...

2021/3/7

ロールフォワードとは

ロールフォワード ロールフォワード(英:roll forward)とは、データベースに障害が発生したときの回復手段の1つです。 バックアップファイルとジャーナルファイル データベースには業務で必要なデータが大量に保存されています。そのため、データベースが破損してしまうと大問題です。 データベースは障害に備えて定期的にバックアップを取ることが基本です。定期的に取得するバックアップは、データベースの内容を丸ごと別ファイルに保存します。バックアップファイルを定期的に取得することで、障害発生時にデータベースを元に ...

2021/3/6

【データベース】ロールバック(rollback)とは

ロールバック(rollback) ロールバック(英:rollback)とは、トランザクション処理においてデータ更新などに失敗した場合に、処理を破棄する(トランザクション開始前の状態に戻す)ことをいいます。 トランザクションとは、トランザクション開始~終了までの一連の処理のことです。 例えば、上記図のような処理があるとします。 商品購入 トランザクション開始 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 トランザクション終了 処理2~処理5までの一連の処理をトランザク ...

2021/3/4

【データベース】コミット(commit)とは

コミット(commit) データベースのコミットとは コミット(英:commit)とは、トランザクションの処理を確定させることです。トランザクションとは、一連の処理をひとまとめにしたものです。 例えば、次の図はトランザクションのイメージ例です。 利用者が商品を購入 処理開始(トランザクション開始) 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 処理終了(トランザクション終了) 処理2~処理5までの一連の処理をトランザクションといい、この一連の処理(トランザクション) ...

2021/3/6

【データベース】トランザクションとは

トランザクション管理 データベースのトランザクションとは トランザクション(英:transaction)とは、一連の処理をひとまとめにしたものです。 以下はトランザクションのイメージ図です。 上記図の例は、次のような流れです。 トランザクション開始 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 トランザクション終了 このようにトランザクション開始~終了までの一連の処理のことをトランザクションといいます。 そしてトランザクションを終了するときは、一連の処理を「確定させ ...

2021/2/28

ビューとは(データベース)

ビュー(view) データベースのビューとは 関係データベースにおけるビュー(英:view)とは、1つ以上の表(テーブル)から必要な要素だけを取り出して作った仮想的な表のことです。 例えば、次のような3つの表があるとします。 「社員テーブル」は社員の情報を管理している表、「部署マスタ」は部署の情報を管理している表、「課マスタ」は課の情報を管理している表です。 データベースの表はデータを効率よく格納するために正規化されています。この正規化された表は、必ずしも使いやすいとは限りません。 例えば、次のような「営 ...

2021/2/22

DCL(データ制御言語)とは

データ制御言語(DCL) DCL(Data Control Language)とは、データ制御言語と呼ばれるSQLの命令のことです。 主なデータ制御言語は次の通り。 データ制御言語 説明 GRANT テーブルに対する権限を与える REVOKE テーブルに対する権限を取り消す データベースのテーブルに対する権限を与える「GRANT」、権限を取り消す「REVOKE」などのデータ制御言語のことを「DCL」といいます。 スポンサーリンク 「GRANT」または「REVOKE」で設定できる主な権限には次のようなものが ...

2021/2/21

DML(データ操作言語)とは

データ操作言語(DML) DML(Data Manipulation Language)とは、データ操作言語と呼ばれるSQLの命令のことです。 主なデータ操作言語は次の通り。 データ操作言語 説明 SELECT テーブルからレコードを抽出する INSERT テーブルにレコードを新規登録する UPDATE テーブルのレコードを更新する DELETE テーブルのレコードを削除する データベースのテーブルにレコードを新規登録する「INSERT」文、更新する「UPDATE」文、削除する「DELETE」文、そして、 ...

2021/2/21

DDL(データ定義言語)とは

テーブルに反映する「DDL」の準備をお願い え・・・。「DDL」って何だろう。。。 データ定義言語(DDL) DDLとは DDL(Data Definition Language)とは、データ定義言語と呼ばれるSQLの命令のことです。 主なデータ定義言語は次の通り。 データ定義言語 説明 CREATE 新しいテーブルやビューなどのデータベースオブジェクトを作成する DROP 既存のデータベースオブジェクトを削除する ALTER 既存のテーブルベースオブジェクトを変更する TRUNCATE テーブルを再作成 ...

© 2021 ITを分かりやすく解説