2016-04-23 15 views
1

私は単一のテーブルと行を持つ単純なmySQLデータベースを持っています。行がそのように設定されています特定の特殊文字はMySQLで無効な文字列エラーですが、他の特殊文字は無効ですか?

utf8mb4_general_ci - 私は手動で次の文字を挿入する場合はvarchar(255)

、それが正常に動作します:

☎、इई、Σ

しかし、私はこれらのような文字を挿入しようとすると:

または

それは仕事と私に無効な文字列のエラーを与えていません。

MATHEMATICAL_ALPHANUMERIC_SYMBOLS

にはどうすればいいにより提出さからそれらを防ぐために、このような文字を検出することができます:私はそれが文字には、次のブロックに属していると述べている最初の文字here.

に関する情報を見つけましたユーザー。私が使うことができる単純な正規表現はありますか?

答えて

1

であり、utf8mb4の範囲内である。したがって、クライアントからmysqldサーバへの接続をutf8mb4として確立する必要があります。あなたはあなたのクライアントが何であるかを言っていないので、私はあなたに特定の答えを与えることはできません。 http://mysql.rjweb.org/doc.php/charcoll#python以降のセクションでクライアントをカバーすることがあります。 utf8の代わりにutf8mb4を必ず使用してください。ただし、UTF-8のままにしてください。