概要
- フレームワークが裏で何をやっているのか理解するために最低限必要なコマンド群をリストにしました。
DML
- SELECT
- INSERT・UPDATE・DELETE
DDL - CREATE
- ALTER
- DROP
トランザクション制御文 - COMMIT
- ROLLBACK
Data manipulation language(DML)
SELECT
- データの検索
- 重複の削除
- 条件指定
SELECT something FROM table_name
SELECT DISTINCT column_name FROM table_name
SELECT something FROM table_name WHERE condition
-- conditionの例
something IS value AND value --value両方にヒットするものを抽出
something IS value OR value --いずれかのvalueにヒットするものを抽出
something IS BETWEEN value OR value --value間にヒットするものを抽出
something IS IN (value, value, ...) --いずれかのvalueを含むものを抽出
something IS LIKE "somethign%" --文字列を含むものを抽出
something IS NULL --空ものを抽出
something IS NOT NULL --空でないものを抽出
ORDER BY something --昇順でソート
ORDER BY something DESC --降順でソート
INSERT
- データの挿入
- データの変更
- データの削除
INSERT INTO table_name VALUES(value, value, ...) --最後尾に値を挿入
INSERT INTO table_name (column, column, ...) VALUES(value, value, ...) --カラムを指定して最後尾に値を挿入
UPDATE table_name SET Column = value WHERE condition --条件に一致するものを更新
DELETE FROM table WHERE condition --条件に一致した行を削除
Data definition language(DDL)
- テーブル作成
- テーブル変更
- テーブル削除
CREATE TABLE table_name (column type, ...);
ALTER TABLE table_name change action;
-- change actionの例
ADD (column_type) --列を追加
MODIFY column_type --データ型やバリデーションを変更
DROP COLUMN column --列の削除
ADD validation --バリデーションを追加
DROP validation --バリデーションを削除
その他
fk_keyの有効・無効化
SET FOREIGN_KEY_CHECKS = 0; --無効化
SET FOREIGN_KEY_CHECKS = 1; --有効化
トランザクション制御文
- DMLを実行した結果
- ターミナルでよく見るかも?
COMMIT; --確定
ROLLBACK; --取り消し(何らかのエラーが出た場合に表示される)
SAVEPOINT savepoint_name; --現在のトランザクション内に新しいセーブポイントを確立
ROLLBACK TO SAVEPOINT savepoint_name; --savepoint_nameの確立後に実行されたコマンドの結果を取消