Berikut ialah beberapa pilihan tajuk, dengan mengingati format soalan dan fokus artikel: **Pilihan 1 (Terus & Ringkas):** Bagaimana untuk Mengeluarkan Pendua Selepas Mencipta Indeks Bukan Unik dalam MySQL?

Mary-Kate Olsen
Lepaskan: 2024-10-25 12:37:02
asal
855 orang telah melayarinya

Here are a few title options, keeping in mind the question format and the article's focus:

**Option 1 (Direct & Concise):** 
How to Remove Duplicates After Creating a Non-Unique Index in MySQL?

**Option 2 (More Specific):**
MySQL Duplicate Rows: How to

Mengalih keluar Pendua dengan Indeks Unik

Dalam senario yang diberikan, pendua telah dimasukkan secara tidak sengaja ke dalam jadual kerana salah konfigurasi indeks pada lajur A, B, C dan D. Walaupun bertujuan untuk mengelakkan pendua, indeks yang dibuat ialah indeks biasa dan bukannya indeks unik.

Pelaksanaan Pertanyaan

Jika percubaan dibuat untuk mengubah indeks sedia ada daripada biasa kepada unik atau menambah indeks unik baharu untuk lajur yang sama, pertanyaan akan gagal disebabkan kehadiran rekod pendua.

Penyelesaian Ganti dengan IGNORE Pilihan (Pra-5.7.4)

Menggunakan pilihan IGNORE dalam sintaks ALTER TABLE membolehkan penyingkiran pendua:

<code class="sql">ALTER IGNORE TABLE mytable ADD UNIQUE INDEX myindex (A, B, C, D);</code>
Salin selepas log masuk

Ini akan membuang baris pendua, tetapi ia adalah penting untuk ambil perhatian bahawa dokumentasi tidak menyatakan baris mana yang akan disimpan.

Penyelesaian untuk MySQL 5.7.4 dan Ke Atas

Untuk versi 5.7.4 dan lebih tinggi, ABAIKAN tidak lagi disokong dalam ALTER TABLE. Walau bagaimanapun, pendekatan berikut boleh digunakan:

  1. Salin data ke dalam jadual sementara.
  2. Potong jadual asal.
  3. Buat indeks unik pada jadual .
  4. Masukkan kembali data ke dalam jadual asal menggunakan INSERT IGNORE.

Proses ini akan mengalih keluar pendua semasa operasi INSERT.

Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, dengan mengingati format soalan dan fokus artikel: **Pilihan 1 (Terus & Ringkas):** Bagaimana untuk Mengeluarkan Pendua Selepas Mencipta Indeks Bukan Unik dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!