Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Memperbaiki penyandian

Teks Anda telah dikodekan ke UTF-8 dan kemudian didekode ulang, secara keliru, sebagai Mac Roman .

Anda tidak akan dapat memperbaikinya di dalam database, karena MySQL tidak mengetahui penyandian Mac Roman. Anda dapat menulis skrip untuk menelusuri setiap baris dari setiap tabel yang terpengaruh dan memperbaiki teks dengan membalik siklus enkode/dekode. Python adalah kemungkinan, memiliki rentang penyandian yang baik:

>>> print u'é'.encode('macroman').decode('utf-8')
é
>>> print u'ö'.encode('macroman').decode('utf-8')
ö
>>> print u'í'.encode('macroman').decode('utf-8')
í

Atau, jika tidak ada konten non-ASCII yang tidak terpengaruh oleh masalah ini, Anda dapat mencoba menggunakan mysqladmin untuk mengekspor dump SQL, lalu mengonversinya sekaligus, baik menggunakan skrip seperti di atas atau, jika Anda memiliki editor teks (mungkin di Mac) yang dapat melakukannya, memuat skrip sebagai UTF-8 lalu menyimpannya sebagai Mac Roma. Terakhir, impor ulang dump menggunakan mysql < dump.sql .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. hitung 10 nilai paling banyak muncul di kolom di mysql

  2. Membatasi port MySQL 3306 ke localhost dengan IPTABLES

  3. Kelambatan ditemukan ketika gambar dasar 64 memilih dan mengkodekan dari database

  4. Python Dari Awal:Buat Situs Web Dinamis

  5. Kinerja MySQL:MyISAM vs InnoDB