SQLのデータ操作言語(DML: Data Manipulation Language)は、データベース内のデータを追加、変更、削除するために使用されます。
1. データの挿入 (INSERT)
INSERT 文は、テーブルに新しい行(レコード)を追加するために使用します。
全ての列に値を挿入する場合
テーブルのすべての列に値を挿入する場合、列名を省略して VALUES 句に値を指定できます。この場合、値の順序はテーブル定義の列順と一致している必要があります。
| |
例:
products テーブルに新しい製品を追加します。
| |
特定の列に値を挿入する場合
特定の列にのみ値を挿入する場合、INSERT INTO の後に列名を指定します。指定しなかった列には、デフォルト値または NULL が挿入されます。
| |
例:
products テーブルに製品名と価格のみを指定して追加します。
| |
2. データの更新 (UPDATE)
UPDATE 文は、テーブル内の既存のレコードの値を変更するために使用します。
| |
SET: 更新する列と新しい値を指定します。WHERE: 更新するレコードを特定するための条件を指定します。WHERE句を省略すると、テーブル内のすべてのレコードが更新されるため、非常に注意が必要です。
例:
products テーブルで product_id が101の製品の価格を更新します。
| |
既存の列の値に基づいて更新することも可能です。
| |
3. データの削除 (DELETE)
DELETE 文は、テーブルからレコードを削除するために使用します。
| |
WHERE: 削除するレコードを特定するための条件を指定します。WHERE句を省略すると、テーブル内のすべてのレコードが削除されるため、非常に注意が必要です。
例:
products テーブルから product_id が102の製品を削除します。
| |
すべてのレコードを削除する場合(テーブル構造は残す):
| |
注意: TRUNCATE TABLE コマンドもテーブルの全レコードを削除しますが、DELETE とは内部的な動作が異なります。TRUNCATE TABLE はDDLコマンドであり、通常は DELETE よりも高速ですが、トランザクションログに記録されないためロールバックができない場合があります。
これらのDMLコマンドを適切に使いこなすことで、データベースのデータを効率的に管理することができます。