131

1 つのコマンドで 1 つのデータベースから複数のテーブルを削除する方法。何かのようなもの、

> use test; 
> drop table a,b,c;

ここで、a、b、c はデータベース テストのテーブルです。

4

4 に答える 4

186

次の構文を使用して、複数のテーブルを削除できます。

DROP TABLE IF EXISTS B,C,A;

これは、各テーブルを個別に削除する代わりに、スクリプトの先頭に配置できます。

于 2011-02-07T14:12:33.753 に答える
92
SET foreign_key_checks = 0;
DROP TABLE IF EXISTS a,b,c;
SET foreign_key_checks = 1;

そうすれば、それらを正しい順序でドロップすることや、それらが実際に存在するかどうかについて心配する必要はありません。

NBこれはMySQL専用です(質問のように)。他のデータベースでは、これを行うための方法が異なる可能性があります。

于 2011-02-07T14:18:38.303 に答える
1

削除するテーブルがたくさんある場合の怠惰な方法です。

  1. 以下を使用してテーブルを取得します

    • SQL サーバーの場合 - SELECT CONCAT(name,',') Table_Name FROM SYS.tables;
    • orce の場合 - SELECT CONCAT(TABLE_NAME,',') FROM SYS.ALL_TABLES;
  2. 結果セットからテーブル名をコピーして貼り付け、DROP コマンドの後に貼り付けます。

于 2020-02-24T16:59:49.183 に答える