MySQL 速習チュートリアル

MySQL DROP TABLE 文

1. MySQL DROP TABLE 文の概要

DROP TABLE ステートメントは、データベース内の既存のテーブルを恒久的に削除するために使用されます。

       注意: テーブルをドロップする際は細心の注意を払ってください!テーブルをドロップすると、テーブルそのものだけでなく、格納されているすべてのデータ(コンテンツ)が完全に削除されます。

2. 基本構文

MySQLでテーブルを削除する際の基本構文は以下の通りです。

DROP TABLE テーブル名;

3. IF EXISTS 句によるエラー防止

指定したテーブルが存在しない場合にエラーが発生するのを防ぐため、IF EXISTS 句を追加するのがベストプラクティスです。

DROP TABLE IF EXISTS テーブル名;

4. 外部キー制約に関する注意点

ほとんどのデータベースにおいて、他のテーブルの**外部キー制約(foreign key constraint)**によって参照されているテーブルをドロップすることはできません。この問題を解決するには、まず外部キー制約を削除するか、あるいは依存している側のテーブルを先にドロップする必要があります。

5. MySQL DROP TABLE の実行例

次の SQL ステートメントは、"Shippers"(配送業者)テーブルを削除する例です。

実行例:

/* "Shippers" テーブルが存在する場合のみ削除を実行 */
DROP TABLE IF EXISTS Shippers;

6. MySQL TRUNCATE TABLE 文

TRUNCATE TABLE ステートメントは、テーブル内のすべてのレコード(データ)を削除するために使用されますが、テーブルの構造(カラムや制約など)はそのまま保持されます。

7. TRUNCATE TABLE の構文

テーブルを空にする(初期化する)場合の構文は以下の通りです。

TRUNCATE TABLE テーブル名;