SQLの概要、区分け
データベース操作を行う際に使用するSQL(Structured Query Language)は以下に大きくDDL、DCL、DMLの3つに分けることができる。
DDL(Data Definition Language:データ定義言語)
データベース、テーブル、ビューなどメタデータ構造を定義する言語
- CREATE テーブルなどの作成
- DROP テーブルなどの削除
- ALTER テーブルなどの変更
- RENAME テーブルなどの名称変更
- TRUNCATE レコードの切り捨て
- COMMENT コメント
DCL(Data Control Language:データ制御言語)
権限や、トランザクションなどを制御する言語
権限
- GRANT 権限付与
- REVOKE 権限削除
トランザクション
- BEGIN トランザクションの開始
- COMMIT トランザクションの確定
- ROLLBACK トランザクションの放棄
DML(Data Manipulation Language:データ操作言語)
データの検索、更新、削除などをするための言語
- SELECT レコードの参照
- INSERT レコードの挿入
- UPDATE レコードの変更
- DELETE レコードの削除
- MERGE レコードの挿入と更新
DDL、DCL、DML
DDL | DCL | DML | ||||
---|---|---|---|---|---|---|
CREATE | テーブルなどの作成 | 権限 | GRANT | 権限付与 | SELECT | レコードの参照 |
DROP | テーブルなどの削除 | REVOKE | 権限削除 | INSERT | レコードの挿入 | |
ALTER | テーブルなどの変更 | トランザクション | BEGIN | トランザクションの開始 | UPDATE | レコードの変更 |
RENAME | テーブルなどの名称変更 | COMMIT | トランザクションの確定 | DELETE | レコードの削除 | |
TRUNCATE | レコードの切り捨て | ROLLBACK | トランザクションの放棄 | MERGE | レコードの挿入と更新 | |
COMMENT | コメント |
関連記事
- PHPでMySQLなどにPDO接続をすると、could not find driverのエラーが出る場合
- CakePHPでカラムを比較してSELECTする方法
- データベースを定時バックアップする方法(毎日バックアップする処理)
- 複数のデータベースを切り替える方法(別データベースを使用する)
- SQL文で順位を求めるには
- SQL文で最新日付のみ抽出するには(最大値の抽出)
- SQLの昇順、降順を表すASCやDESCの言葉の由来
- Zend_DBのSELECTメソッドのまとめ
- Zend_DBの基本
スポンサーリンク