error code 1267. illegal mix of collations for operation '='

 

Kejadian ini terjadi tadi malam, saat saya membuat join table mysql dan mendapatkan error seperti ini

error code

Ternyata error ini terjadi karena 2 table yang saya join ada perbedaan pada collationnya. Mengingat project ini adalah project kejar tanyang dan always updated work by revisi karena memang type kerja client seperti itu. Jadi sepertinya saat membuat table tersebut asal sikat aja dan kurang rapi jadi hasilnya kacau seperti ini.

Ingat, kerjalah dengan teliti seperti kata Pak Guru SD saya dulu, Pak TRIMO

~ Gemi, setiti lan ngati-ati ~

yang artinya lebih kurang Gemi : Jangan peli, Setiti : Teliti lan Ngati-ati : Berhati-hati.

Maaf Pak Trimo, saya lupa.

Akhirnya saya ketempuhan. Pas error kelimpungan nyari solusi.

Pas saya tanya ke teman saya yg bekerja di UAD (Universitas Ahmad Dahlan) bukan (Unit Ahmad Darurat). Terjadi masalah di collation, jadi saya harus mengupdate collation pada database saya.

Yang saya lakukan adalah :

  1. Alter database collation ke utf8_general_ci → saya coba dan hasilnya gagal, tetap error.
  2. saya alter table collationnya saya ubah ke utf8_general_ci → saya coba dan hasilnya gagal, tetap error.
  3. lagi, saya ulangi langkah ke 2, saya terapkan ke semua table pada database saya → saya coba dan hasilnya gagal, tetap error.
  4. lalu saya buka file folder mysql/share/charsets → buka file latin1.xml, nama latin1_swedish_ci saya ubah menjadi latin1_general_ci, restart mysql → gagal
  5. map latin1_swedish_ci saya timpa dengan map dari latin1_general_ci (walaupun setelah saya lihat sama aja) dan hasilnya → gagal.
  6. sampai akhirnya saya ketemu halaman pada stackoverflow ini dan saya coba berhasil.

Yang belum saya coba ternyata adalah SET collation_connection = ‘utf8_general_ci’; lalu saya ulang untuk alter database dan alter table. Dan hasilnya → SUCCESS.

Permasalahan akhirnya terselesaikan, langsung posting agar kedepan kalau ketemu masalah yg sama bisa segera tercerahkan dengan tulisan ini.

 

Terima kasih.

 

~ LANJUT KERJA ~

 

tutorial tutorial mysql mysql collation charset tips mysql error code 1267 illegal mix of collations for operation '=' error code 1267. illegal mix of collations for operation '='

COMMENT
  • Belum ada comment untuk saat ini, jadilah yang pertama
    Kamis, 11 Maret 2021 | by Admin

If you login by google, we're not save your important data and your mail is not published