- HOME >
- 管理人
管理人
SEとして働く「分かる君」がつ運営するサイトです。 ITの難しい用語や、仕事で感じた事などを中心に"わかりやすさ"を意識して記事にしています。少しでも共感や参考にしていただける人がいたら嬉しいです。
トランザクション管理 データベースのトランザクションとは トランザクション(英:transaction)とは、一連の処理をひとまとめにしたものです。 以下はトランザクションのイメージ図です。 上記図の例は、次のような流れです。 トランザクション開始 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 トランザクション終了 このようにトランザクション開始~終了までの一連の処理のことをトランザクションといいます。 そしてトランザクションを終了するときは、一連の処理を「確定させ ...
ビュー(view)を作成する CREATE VIEWの基本構文 SQLの「CREATE VIEW」を使えば、ビューを作成できます。 パラメータ説明WITH READ ONLY読み取り専用のビューを作成するWITH CHECK OPTION更新可能なビューを作成する 「WITH READ ONLY」を指定すれば読み取り専用のビュー、「WITH CHECK OPTION」を指定すれば更新可能なビューを作成できます。 ただし、次の条件に一致する場合は、更新可能な「WITH CHECK OPTION」を指定しても ...
ビュー(view) データベースのビューとは 関係データベースにおけるビュー(英:view)とは、1つ以上の表(テーブル)から必要な要素だけを取り出して作った仮想的な表のことです。 例えば、次のような3つの表があるとします。 「社員テーブル」は社員の情報を管理している表、「部署マスタ」は部署の情報を管理している表、「課マスタ」は課の情報を管理している表です。 データベースの表はデータを効率よく格納するために正規化されています。この正規化された表は、必ずしも使いやすいとは限りません。 例えば、次のような「営 ...
【入門】基本的なSQL よく利用する基本的なSQL文を紹介しています。 データベースの作成・削除 項目 SQL文 データベースを作成する CREATE DATABASE データベースを削除する DROP DATABASE テーブルの作成・削除・定義変更 項目 SQL文 テーブルを作成する CREATE TABLE テーブルを削除する DROP TABLE テーブルの定義を変更する ALTER TABLE テーブルを再作成する TRUNCATE プライマリキーを追加・削除する PRIMARY KEY 一意制 ...
データベースの作成(CREATE DATABASE) SQLの「CREATE DATABASE」を使うことで、データベースを作成することができます。 CREATE DATABASEの例 以下は「CREATE DATABASE」を使い「mydb」というデータベースを作成しています。※例はMySQLを使用。 ■テーブル作成前 > SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information ...
副問合せ(サブクエリ) 副問合せとは、SELECT文の中にSELECT文を入れ子状態に埋め込むことをいい、サブクエリとも呼ばれています。 副問合せは、SELECT句やFROM句、WHERE句、HAVING句で利用できます。 本記事では、副問合せの使い方について紹介しています。 また「user」テーブルと「department」テーブルには、次のようなデータが格納されていることを前提としています。 ■userテーブル ID (id) ※PK商品名 (name)住所(address)年齢(age)部署ID(d ...
DDL、DML、DCLの違い DDL、DML、DCLの違いは次の通りです。 DDL(データ定義言語)とは DDLとは、データ定義言語と呼ばれるSQLの命令のことです。 データベースに新規テーブルを作成する「CREATE」文、テーブルを削除する「DROP」文、既存テーブルのカラム定義を変更する「ALTER」文などをデータ定義言語(英:Data Definition Language、略:DDL)といいます。 【主なデータ定義言語】 データ定義言語 説明 CREATE 新しいテーブルやビューなどのデータベース ...
データ制御言語(DCL) DCL(Data Control Language)とは、データ制御言語と呼ばれるSQLの命令のことです。 主なデータ制御言語は次の通り。 データ制御言語 説明 GRANT テーブルに対する権限を与える REVOKE テーブルに対する権限を取り消す データベースのテーブルに対する権限を与える「GRANT」、権限を取り消す「REVOKE」などのデータ制御言語のことを「DCL」といいます。 「GRANT」または「REVOKE」で設定できる主な権限には次のようなものがあります。※付与で ...
データ操作言語(DML) DML(Data Manipulation Language)とは、データ操作言語と呼ばれるSQLの命令のことです。 主なデータ操作言語は次の通り。 データ操作言語 説明 SELECT テーブルからレコードを抽出する INSERT テーブルにレコードを新規登録する UPDATE テーブルのレコードを更新する DELETE テーブルのレコードを削除する データベースのテーブルにレコードを新規登録する「INSERT」文、更新する「UPDATE」文、削除する「DELETE」文、そして、 ...
データ定義言語(DDL) DDLとは DDL(Data Definition Language)とは、データ定義言語と呼ばれるSQLの命令のことです。 主なデータ定義言語は次の通り。 データ定義言語 説明 CREATE 新しいテーブルやビューなどのデータベースオブジェクトを作成する DROP 既存のデータベースオブジェクトを削除する ALTER 既存のテーブルベースオブジェクトを変更する TRUNCATE テーブルを再作成する(テーブル内のデータを全削除する) データベースに新規テーブルを作成する「CRE ...
一意制約(UNIQUE)の作成 一意制約(英:UNIQUE、ユニーク制約)は、「ALTER TABLE」で作成できます。 一意制約(UNIQUE)の作成例 以下は「ALTER TABLE」を使い「sample」テーブルの「name」に一意制約(UNIQUE)を追加する例です。 ■一意制約(UNIQUE)作成前 > SHOW CREATE TABLE sample; CREATE TABLE `sample` ( `id` int NOT NULL, `address` varchar(255) DE ...
プライマリキーの追加 プライマリキー(英:PRIMARY KEY、略:PK)は、「CREATE TABLE」でテーブルを作成するときに追加できます。また「ALTER TABLE」で後から追加することも可能です。 ※「CREATE TABLE」でプライマリーキーを追加する例は「こちら」の記事をご覧ください。 「ALTER TABLE」でプライマリキーを追加する基本構文は次の通り。 ALTER TABLEでプライマリキーを追加する 以下は「ALTER TABLE」を使い「sample」テーブルにプライマリキー ...
インデックス(INDEX)を作成する SQLの「CREATE INDEX」または「ALTER TABLE」を使うことで、データベースのテーブルにインデックス(INDEX)を付与することができます。 「CREATE INDEX」でインデックスを作成する ■CREATE INDEXの実行例 ※MySQLの例 CREATE INDEX idx_sample ON sample (id, age); ■INDEXの確認 > SHOW INDEX FROM sample; +----- ...
ALTER TABLEの基本構文 SQLの「ALTER TABLE」を使うことで、テーブルのカラム追加・変更・削除できます。 本記事では「ALTER TABLE」を用いてテーブルのカラム追加・変更・削除する方法について解説しています。 ALTER TABLEの書き方 カラム追加(ALTER TABLE ADD) ■「sample」テーブルにカラム「address」を追加 ALTER TABLE sample ADD COLUMN address VARCHAR(200); ■「sample」テーブルに複数 ...
DROP TABLEの基本構文 データベースのテーブルはSQLの「DROP TABLE」で削除します。 本記事では「DROP TABLE」を用いてデータベースのテーブルを削除する方法について解説しています。 DROP TABLEの書き方 【例1】テーブルを削除する テーブルは「DROP TABLE」で削除します。 次の例では「sample」テーブルを削除しています。 ■テーブル削除前 ■DROP TABLEの実行例1 > DROP TABLE sample; Query OK, 0 rows aff ...
CREATE TABLEの基本構文 SQLの「CREATE TABLE」を使うことで、データベースにテーブルを作成できます。 本記事では「CREATE TABLE」を用いてデータベースに新規テーブルを作成する方法について解説しています。 CREATE TABLEの書き方 【例1】テーブル作成 プライマリキー付き 以下は「sample」テーブルを作成する例です。 [sampleテーブル] カラム名データ型NULL許容その他idINTしないPRIMARY KEYnameVARCHAR(45)する ■CREAT ...
TRUNCATEの基本構文 SQLのTRUNCATE文を使うことで、テーブルを再作成(テーブルごと削除してから再作成)できます。 本記事では、TRUNCATE 文を用いてテーブルを再作成する方法について解説しています。 TRUNCATE文の書き方 テーブルを再作成する それでは、TRUNCATE文を用いてテーブルを再作成します。次の例では「item」テーブルを「TRUNCATE」を用いて再作成しています。 ■TRUNCATE実施前 > SELECT * FROM item; +----+------ ...
DELETE文の基本構文 SQLのDELETE文を使えば、テーブルのレコード(1行分のデータ)を削除できます。 本記事では、DELETE文を用いてテーブルのレコードを削除する方法について解説します。 DELETE文の書き方 条件を指定してテーブルのレコードを削除する それでは、DELETE文を用いて「item」テーブルの指定したレコードを削除します。 今回の例では、「id = 5」のレコードを削除しています。 ■削除前の「item」テーブル > SELECT * FROM item; +----+- ...
【SQL】UPDATE文の基本構文 SQLのUPDATE文を使うことで、データベースのテーブルのレコードを更新できます。 本記事では、SQLのUPDATE文を用いてテーブルのレコードを更新する方法について解説しています。 UPDATE文の書き方 テーブルのレコードを更新する それでは、UPDATE文を用いて「item」テーブルのレコードを更新します。 ■更新前の「item」テーブル > SELECT * FROM item; +----+-------+-------+----------+ | i ...
INSERT文の基本構文 SQLのINSERT文を使うことで、データベースのテーブルにレコードを追加できます。 本記事では、INSERT文を用いてテーブルにレコードを追加する方法について解説しています。 INSERT文の書き方 テーブルにレコードを追加する(列名指定) それでは、INSERT文を用いて「item」テーブルにレコードを追加します。 ■データ登録前 > SELECT * FROM item; +----+-------+-------+----------+ | id | name | ...