Mengatasi Error Code: 1062. Duplicate Entry
Peringatan : Tulisan ini bersifat teknis IT!
Seseorang pernah bertanya padaku, “Apa yang membuatmu bahagia?”
“Apa ya?” jawabku.
Entah mengapa aku kesulitan menjawab pertanyaan mudah seperti itu. Apa yang sebenarnya membuatku bahagia? Makan enak? Mobil mewah? Rumah megah? Keliling dunia?
Ah, rasanya tanpa itu, aku masih bisa bahagia.
Ketika aku bisa memberikan manfaat bagi orang lain. Saat aku bisa memberikan ‘sesuatu’ pada orang lain dan orang tersebut berterima kasih dengan ‘sesuatu’ yang tak seberapa itu, rasanya luar biasa bahagia.
Seperti halnya hari ini. Selepas dhuhur kami disibukkan dengan simulasi migrasi data pasien dari database A ke database B. Kami cukup melakukan export data dari database lama dan kemudian import ke database baru.
Proses export berjalan lancar. Ada 400 ribu data yang berhasil ditarik. Namun, saat import tak semua data berhasil dimasukkan. Ada data yang gagal di import. Temanku yang pertama kali menemukannya. Ya karena dia yang mengerjakan. Hehe. Aku mengerjakan pekerjaan lain. Mendapati kegagalan tersebut, temanku meminta bantuan pada orang seruangan, termasuk aku.
“Kenapa ya Mi? Kok nggak semua data ter-import?”
Aku pun turun tangan. Ku akses database temanku dan mencoba melakukan import di komputerku. GAGAL. Bahkan data yang ter-import jauh lebih sedikit. Kenapa ya?
Ku lihat log proses import. Terdapat pesan kesalahan ; Err Code: 1062. Duplicate entry ‘SUMIYATI’ for key ‘NAMA’
Lho lho lho... Sejak kapan field NAMA jadi primary key ?
Ku lihat struktur tabel. Tak ada yang salah. NAMA tidak disetting sebagai primary key. Pasti ada yang salah saat proses import. Ku coba sekali lagi dengan memperhatikan setiap langkah import. Jangan sampai si NAMA ini tersetting sebagai primary key. PROCESS! Error yang sama kembali muncul.
Apa ya?
Mengetahui aku yang gagal, temanku yang lain mencoba membantu. Bala bantuan kini bertambah. Dia mencoba cara yang sama, namun gagal juga. Dia pun mencari solusi alternatif lain. Sementara aku, aku coba googling, mencari solusi atas kegagalan yang kami alami.
Kemungkinan dari Error Code: 1062. Duplicate Entry antara lain:
#1 : Duplicate value
#2 : Unique data field
#3 : Data type – upper limit
Kalau masalahnya ada pada field yang jadi primary key, wajarlah ya terjadi duplicate value. Tapi ini ada pada field NAMA dan setelah ku cek kembali struktur tabelnya, tidak ada yang aneh dari field ini. Tipe datanya varchar dengan panjang 100. Ku coba memperpanjang range nya menjadi 1000, import masih gagal. Ku coba ganti tipe data menjadi text, masih gagal juga.
Apa ya?
Tak ingin menyerah, ku coba cek sekali lagi struktur tabel. Penasaran. Pasti ada yang salah. Pasti.
Sementara temanku sudah mendapatkan solusi alternatif yang sebenarnya cukup ribet tapi menyelesaikan masalah, aku justru sibuk mengulik struktur tabel. Haha. Pantang menyerah
.
.
AHA!
Sepertinya aku tahu masalahnya dimana. Saat ku buka tab Indexes, ku lihat field NAMA dengan type “Unique”. Pasti masalahnya disini. Ku ganti type nya menjadi ‘Normal’, mengikuti field lainnya.
Ku coba melakukan import lagi. Apa yang terjadi?
Errors : 0
YATTA! BERHASIL!
Ku kabari teman-temanku tentang temuanku ini. Respon mereka, “Kenapa baru sekarang Mi? Kenapa nggak dari tadi?”
BAHAHA. Kalau aku tahu, aku bakal ngasih tahu lebih cepet Mbak :p
Ahh~ leganya! Hal – hal seperti ini sih yang sebenarnya bikin aku bahagia. Ketika orang lain merasa terbantu dengan apa yang ku lakukan, itu sudah cukup membuat hatiku berbunga-bunga seharian. Hahaha.
semoga selalu berbahagia ya saaay. mangat teruuuuuss :)
ReplyDeleteyey.. mangat!
DeleteMaaf Saya Mau Nanya Jika
ReplyDeleteMySQL menyatakan: Dokumentasi
#1062 - Duplicate entry '2' for key 'PRIMARY
Padahal Primary Keynya id
Bagaimana solusinya?
isi data yang berbeda dari yang sudah ada sebelumnya
DeleteMakasih yahhh krn cerita mu ini sy bisa menemukan dimana letak kesalahan ku
ReplyDeletesama-sama :)
Deletetutorial ga jelas tai
ReplyDeletejangan marah-marah om,dibaca pelan-pelan sampai selesai
Deletealhamdulillah, mantul guys!
ReplyDelete