sql >> データベース >  >> RDS >> Mysql

MySQL変換文字セットの問題

    わかった!だからこれが起こったに違いない:

    ユーザーインターフェイス(UTF-8)→コントローラー(UTF-8)→モデル(ISO-8859-1)→データベース(UTF-8、ただしISO-8859-1を受信)

    そのため、フィールドはUTF-8エンコードを使用するように構成されましたが、ISO-8859-1エンコードされたデータを受信します。誤ってエンコードされたデータをUTF-8に変換したかったのです。

    データは実際にはISO-8559-1でエンコードされていたので、次の小さなMySQL「ハック」で問題を解決しました。

    UPDATE `table` SET `column` = convert(cast(convert(`column` using  latin1) as binary) using utf8)
    

    礼儀 ABS StackOverflowで。

    皆さん、私の問題を調査していただきありがとうございます! :)




    1. MariaDBで名前付きタイムゾーンを設定する方法

    2. magic_quotes_gpcがオンの場合、mysql_real_escape_string()を使用する必要がありますか?

    3. sql-存在しない場合は挿入

    4. SCDタイプ3