Rumah >pangkalan data >tutorial mysql >ALTER ABAIKAN JADUAL TAMBAH UNIK: Apa Berlaku untuk Mendua Rekod dalam MySQL?

ALTER ABAIKAN JADUAL TAMBAH UNIK: Apa Berlaku untuk Mendua Rekod dalam MySQL?

Patricia Arquette
Patricia Arquetteasal
2024-11-03 02:13:03690semak imbas

ALTER IGNORE TABLE ADD UNIQUE: What Happens to Duplicate Records in MySQL?

ALTER IGNORE TABLE ADD UNIK: Apa Berlaku untuk Mendua Rekod?

Apabila mengubah jadual menggunakan ALTER IGNORE TABLE ADD UNIK, tingkah laku MySQL dalam mengendalikan rekod pendua telah berkembang daripadanya versi.

MySQL 5.7.4 dan Kemudian:

Dalam MySQL 5.7.4 dan versi seterusnya, klausa IGNORE tidak lagi tersedia untuk operasi ALTER TABLE dan gunakan keputusan dalam ralat.

Versi MySQL Sebelum 5.7.4:

Dalam versi terdahulu MySQL yang menyokong klausa IGNORE, tingkah lakunya adalah seperti berikut:

  • Rekod pertama dengan kunci pendua akan dikekalkan.
  • Semua rekod berikutnya dengan kunci pendua akan menjadi dipadamkan.

Ini bermakna rekod dengan kunci utama terkecil (ID dalam kes anda) akan disimpan, manakala semua yang lain akan dibuang. Ini adalah kerana kunci utama adalah dinaikkan secara automatik dan oleh itu menentukan susunan pemasukan rekod.

Adalah penting untuk ambil perhatian bahawa klausa IGNORE juga mempengaruhi pemotongan nilai yang salah. Mana-mana nilai yang melanggar kekangan dipotong kepada nilai yang paling hampir boleh diterima.

Atas ialah kandungan terperinci ALTER ABAIKAN JADUAL TAMBAH UNIK: Apa Berlaku untuk Mendua Rekod dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn