MySQL でテーブルの削除 (DROP TABLE)
ここでは MySQL でテーブルを削除する方法をご説明します。
DROP TABLE でテーブルを削除する
MySQL でテーブルを作成するには DROP TABLE 文を使います。
基本の DROP TABLE 文の構文は次の通りです。
DROP TABLE テーブル名;
テーブル名をカンマで続けて、複数のテーブルを同時に削除することもできます。
例えば、test_db データベースに test という名前のテーブルがあります。
この test テーブルを削除するには、test_db を選択して、次のクエリーを実行します。
DROP TABLE test;
上のクエリーを実行すると、MySQL Workbench の Schemas タブ の Tables から test テーブルが削除されました。
今回は単独のひとつのテーブルを削除しましたが、親子関係のある複数のテーブルを削除する時は、子供にあたるテーブルから先に削除してください。
DROP TABLE IF EXISTS でテーブルが存在すれば削除する
先ほどの DROP TABLE クエリーをもう一度実行すると、削除しようとするテーブルが存在しないため、以下のように「Error Code: 1051. Unknown table 'test_db.test'」というエラーになります。
次のように DROP TABLE に続けて IF EXISTS を指定することで、テーブルが存在する時のみ削除し、存在しなくてもエラーにならないようにすることができます。
DROP TABLE IF EXISTS テーブル名;
削除しようとするテーブルが存在しなかった場合は Warning が生成されます。
もう一度 test テーブルを作って、次のクエリーを二回実行してみます。
DROP TABLE IF EXISTS test;
一回目の実行で test テーブルが削除され、二回目の実行時にはエラーにならず、警告が出ていますね。
以上、MySQL でテーブルを削除する方法をご説明しました。