sql >> データベース >  >> RDS >> Mysql

MySQLに存在する場合のドロップテーブル

    MySQLでは、IF EXISTSを使用できます DROP TABLEの句 テーブルを削除する前に、テーブルが存在するかどうかを確認するステートメント。

    デモンストレーションの例を次に示します。

    DROP TABLE IF EXISTS t1;

    そのステートメントは、t1というテーブルを削除します 存在する場合。

    そのステートメントを実行したとき、テーブルはすでに存在していたため、テーブルが削除され、次のメッセージが表示されました。

    Query OK, 0 rows affected (0.00 sec)

    ステートメントを再度実行すると(すでに削除された後)、次のメッセージが表示されました:

    Query OK, 0 rows affected, 1 warning (0.00 sec)

    したがって、エラーは発生しませんでしたが、警告が表示されました。

    警告を見てみましょう:

    SHOW WARNINGS;

    結果:

    +-------+------+-------------------------+
    | Level | Code | Message                 |
    +-------+------+-------------------------+
    | Note  | 1051 | Unknown table 'test.t1' |
    +-------+------+-------------------------+

    警告は、テーブルが存在しないことを示していますが、エラーではありません。

    IF EXISTSを使用しない場合は次のようになります :

    DROP TABLE t1;

    結果:

    ERROR 1051 (42S02): Unknown table 'test.t1'

    今回はエラーが発生します。

    テーブルを削除せずにテーブルが存在するかどうかを確認したいだけの場合は、MySQLにテーブルが存在するかどうかを確認する5つの方法も参照してください。


    1. 見落とされたT-SQLジェム

    2. 再起動せずにSQLServerインスタンスへのアクセスを復元する

    3. エラー1022-書き込めません。テーブル内の重複キー

    4. SEC_CASE_SENSITIVE_LOGON12cで非推奨