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

MySQLに列が存在する場合は、ALTERを使用して列を削除します

    MySQLの場合、何もありません: MySQL機能リクエスト

    とにかく、これを許可することは間違いなく本当に悪い考えです:IF EXISTS (あなたにとって)未知の構造を持つデータベースで破壊的な操作を実行していることを示します。これが迅速で汚いローカル作業に受け入れられる状況があるかもしれませんが、(移行などで)本番データに対してそのようなステートメントを実行したい場合は、火遊びをしています。

    しかし、主張するのであれば、クライアントで最初に存在を確認したり、エラーをキャッチしたりすることは難しくありません。

    MariaDBは、10.0.2以降の以下もサポートしています。

    DROP [COLUMN] [IF EXISTS] col_name 
    

    私。 e。

    ALTER TABLE my_table DROP IF EXISTS my_column;
    

    しかし、MySQLのいくつかのフォークのうちの1つだけでサポートされている非標準機能に依存することは間違いなく悪い考えです。



    1. オンライン調査のためのデータベースモデル。パート3

    2. SQL / MySQLでは、結合ステートメントのONとWHEREの違いは何ですか?

    3. UTF-8で大文字と小文字を区別せずアクセントを区別しないMySQLの動作方法

    4. MySQL Connector / NETを使用して、深さ2を超えるオブジェクトグラフでEntity Frameworkを使用するにはどうすればよいですか?