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

MySQL:ALTER IGNORE TABLE ADD UNIQUE、何が切り捨てられますか?

    最初のレコードは保持され、残りは削除されます§§

    IGNORE 標準SQLのMySQL拡張です。これは、新しいテーブルに一意のキーが重複している場合、または厳密モードが有効になっているときに警告が発生した場合に、ALTERTABLEがどのように機能するかを制御します。 IGNOREの場合 指定されていない場合、重複キーエラーが発生した場合、コピーは中止され、ロールバックされます。 IGNOREの場合 が指定されている場合、最初ののみ 行は、一意のキーで重複している行で使用されます。他の競合する行は削除されます 。誤った値は、最も一致する許容値に切り捨てられます

    ここで「最初」とは、IDが主キーであると仮定して、IDが最小のものを意味すると推測しています。

    注:

    MySQL 5.7.4以降、IGNORE ALTER TABLEの句 削除 その使用はエラーを生成します 。



    1. PHPとMySQLを使用してニュースレターシステムを構築する

    2. SQL Serverで前月の最初と最後の日(タイムスタンプ付き)を取得する方法

    3. ミリ秒単位のCURRENT_TIMESTAMP

    4. ハイブリッドクラウドにデプロイされたPostgreSQLのディザスタリカバリオプション