A script to change all tables and fields to the utf-8-bin collation in MYSQL

后端 未结 16 1030
有刺的猬
有刺的猬 2020-12-04 06:24

Is there a SQL or PHP script that I can run that will change the default collation in all tables and fields in a database?

I can write one

16条回答
  •  南笙
    南笙 (楼主)
    2020-12-04 07:12

    Be careful! If you actually have utf stored as another encoding, you could have a real mess on your hands. Back up first. Then try some of the standard methods:

    for instance http://www.cesspit.net/drupal/node/898 http://www.hackszine.com/blog/archive/2007/05/mysql_database_migration_latin.html

    I've had to resort to converting all text fields to binary, then back to varchar/text. This has saved my ass.

    I had data is UTF8, stored as latin1. What I did:

    Drop indexes. Convert fields to binary. Convert to utf8-general ci

    If your on LAMP, don’t forget to add set NAMES command before interacting with the db, and make sure you set character encoding headers.

提交回复
热议问题