3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SQLの基本:DDL、DML、DCL違い

Last updated at Posted at 2024-04-18

データベースを操作するためのSQL(Structured Query Language)には、主に3つの重要なカテゴリがあります。これらはDDL(Data Definition Language)、DML(Data Manipulation Language)、DCL(Data Control Language)です。これらのカテゴリは、データベースの異なるアスペクトを操作するために使用されます。

DDL(データ定義言語)

DDLは、データベースの構造を定義するために使用されるコマンド群です。これには、テーブル、インデックス、ビューなどのデータベースオブジェクトの作成、変更、削除が含まれます。DDLコマンドは、データベースのスキーマを設定または変更する際に使用されます。

  • CREATE: 新しいテーブルやデータベースオブジェクトを作成する
  • ALTER: 既存のデータベースオブジェクトを変更する
  • DROP: 既存のオブジェクトを削除する
CREATE TABLE users (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100)
);

ALTER TABLE users ADD COLUMN age INT;

DROP TABLE users;

DML(データ操作言語)

DMLは、データベース内のデータを操作するために使用されるコマンドです。データの挿入、更新、削除などを行います。これらのコマンドは、アプリケーションがデータベースと対話する際に頻繁に使用されます。

  • INSERT: テーブルに新しいデータを挿入する
  • UPDATE: テーブルの既存のデータを更新する
  • DELETE: テーブルからデータを削除する
  • SELECT: テーブルからデータを選択する
INSERT INTO users (id, name, email) VALUES (1, 'Taro', 'taro@example.com');

UPDATE users SET name = 'Jiro' WHERE id = 1;

DELETE FROM users WHERE id = 1;

SELECT * FROM users WHERE age > 20;

DCL(データ制御言語)

DCLは、データベースのセキュリティとアクセス権限を管理するために使用されるコマンドです。これには、ユーザーへの権限付与や権限の取り消し、トランザクションの制御などが含まれます。

  • GRANT: ユーザーに特定の権限を付与する
  • REVOKE: ユーザーから特定の権限を取り消す
GRANT SELECT, INSERT ON users TO some_user;

REVOKE INSERT ON users FROM some_user;

これらのカテゴリを適切に理解して使用することで、データベース管理者や開発者はデータベースを効果的に管理し、アプリケーションのニーズに合わせてデータを正確に操作することができます。

参照

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?