MySQL: ALTER IGNORE TABLE ADD UNIQUE - レコード切り捨ての影響
IGNORE 句を含む ALTER TABLE ステートメントは、一意制約を追加するために使用されますテーブルにコピーすると、重複レコードが削除される可能性があります。ただし、保持される特定のレコードによって疑問が生じる可能性があります。
質問:
次のステートメントを実行するとき:
ALTER IGNORE TABLE `my_table` ADD UNIQUE (`type`, `owner`);
どのレコード同じタイプと所有者の値を持つ重複レコードが複数ある場合、保存されますか?
回答:
MySQL 5.7.4 以降、IGNORE 句は廃止されました。
ただし、IGNORE 句を許可する MySQL の以前のバージョンでは:
MySQL ドキュメントによると、「最初」とは主キー値が最も小さいレコードを指す可能性があります。あなたの場合、ID 列が主キーであると仮定すると、最小の ID を持つレコードが保持されます。
以上がMySQL で「ALTER IGNORE TABLE ADD UNIQUE」を使用すると、どのレコードが保持されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。