Mengatasi Error ‘Current Selection Does Not Contain a Unique Column’

 Mengatasi Error “Current Selection Does Not Contain a Unique Column” di phpMyAdmin

�� Deskripsi Error

Error ini biasanya muncul saat kamu mencoba membuat relasi antar tabel menggunakan Relation View di phpMyAdmin. Ini berarti kolom yang kamu pilih sebagai referensi tidak memiliki nilai unik, yang diperlukan untuk relasi antar tabel.

✅ Penyebab Umum

- Kolom yang dijadikan referensi foreign key bukan PRIMARY KEY dan tidak punya UNIQUE constraint.

- Kolom tersebut mengandung data duplikat, sehingga tidak bisa dijadikan acuan unik oleh sistem.

�� Langkah-Langkah Mengatasi

1. Periksa Apakah Kolom Sudah Unik

Misalnya kamu ingin merujuk customer_id dari tabel customers. Jalankan kueri berikut untuk cek apakah ada data duplikat:

SELECT customer_id, COUNT(*)
FROM customers
GROUP BY customer_id
HAVING COUNT(*) > 1;

Jika hasilnya ada, berarti kolom customer_id tidak unik.

2. Buat Kolom Menjadi Unik

Jika tidak ada duplikat, tambahkan constraint UNIQUE atau PRIMARY KEY:

· - Menambahkan UNIQUE:

ALTER TABLE customers ADD UNIQUE (customer_id);

· - Menambahkan PRIMARY KEY:

ALTER TABLE customers ADD PRIMARY KEY (customer_id);

⚠️ Pastikan tidak ada duplikat sebelum menjalankan perintah ini.

3. Hapus atau Perbaiki Duplikat (Jika Ada)

Jika ditemukan data ganda, kamu bisa:
- Menghapus baris duplikat secara manual di phpMyAdmin
- Atau menjalankan query DELETE (dengan hati-hati)

4. Gunakan Relation View di phpMyAdmin

Setelah kolom referensi sudah unik:
- Masuk ke tabel yang ingin kamu hubungkan
- Klik tab Structure
- Klik Relation View di bagian bawah
- Tambahkan Foreign Key
- Pilih kolom yang sesuai sebagai referensi (yang sekarang sudah unik)

�� Catatan Tambahan

Relasi antar tabel membutuhkan kolom referensi yang unik, karena itu phpMyAdmin menolak pengaturan relasi jika kolom target tidak memenuhi syarat tersebut. Untuk membuat struktur database yang rapi, pastikan setiap foreign key mengarah ke primary key atau kolom yang sudah diberi UNIQUE constraint.

0 Response to "Mengatasi Error ‘Current Selection Does Not Contain a Unique Column’"

Post a Comment