MySQLでテーブルを削除する方法について書いています。
テーブルを削除するときには、DROP TABLE
を使うと良いです。
MySQLのバージョン8.0.32で、動作を検証しています。
テーブルを削除するには?
MySQLでテーブルを作成するには、DROP TABLE文を使います。
USE
を使って、テーブルを作成したいデータベースを選択した後に実行してください。
DROP TABLE文の後に、テーブル名を指定します。
DROP TABLE messages;
今回はmessages
テーブルを削除します。
実行するとmessages
テーブルが削除されます。
存在しないテーブルを削除すると?
存在しないテーブルを削除しようとすると、ERROR 1051 (42S02)
エラーが発生します。
例えば、test
データベースの存在しないhoge
テーブルを削除しようとします。
DROP TABLE hoge;
そうすると、下記のようにERROR 1051 (42S02)
エラーが発生します。
ERROR 1051 (42S02): Unknown table 'test.hoge'
存在するときだけ削除を実行する
先ほどは存在しないテーブルを削除しようとしてエラーが発生しました。
存在するときにだけテーブルを削除して、存在しないときには無視するようにするにはIF EXISTS
を使います。
例えば、下記のように使います。
DROP TABLE IF EXISTS hoge;
このようにIF EXISTS
を使うと、テーブルが存在するときには削除されます。
テーブルが存在しないときには、エラーにならずに実行されます。
一時テーブルを削除する
一時テーブルを削除するときには、TEMPORARY
キーワードをつけておくと良いです。
こうすると、一時(TEMPORARY
)テーブルではない場合には削除されません。
DROP TEMPORARY TABLE fuga;
今回は、一時テーブルのfuga
テーブルを削除しています。
テーブルを削除する方法のまとめ
今回はMySQLでテーブルを削除する方法について書きました。
記事の内容をまとめると、下記のようになります。
・削除しようとするテーブルが存在しないときにはエラーになる。
・`IF EXISTS`を使うと、存在しないときにはエラーにならず、存在するときにのみ削除される。
・`TEMPORARY`を使うと、一時テーブルのみを対象に削除することができる。
コメント