1

いくつかのキーワードの翻訳を含むデータベースがあります。

私はそれらの翻訳にアクセスしていますが、フランス語の単語の多くには、英語で表示されない文字があります。たとえば、アクセント付きのe。(後で他の言語に翻訳しますが、同じ問題が発生すると確信しています。)

これらの翻訳はMySQLデータベースからのものであることを念頭に置いて、これを回避する方法はありますか?文字セットをutf-8からiso8859-1に変更してみましたが、違いはありませんでした。

どんな指導もとても温かく受けられます!ありがとう

4

3 に答える 3

0

クライアントエンコーディングをUTF-8とデータベース照合utf8_binに設定します。データベースに単語を正確に挿入するにはどうすればよいですか?単語を自動的に翻訳して挿入しますか、それとも手作業で行いますか。接続照合をUTF8に設定することもできます。

- - - - アップデート - - - -

PHPで文字セット接続を強制するには、接続の後に次を追加するだけです。

mysql_query('SET NAMES utf8');

それが機能しない場合は、スクリプトでもutf8に文字セットを適用してみてください。

mysql_query('SET CHARACTER SET utf8');

また、データベースを呼び出す前に、すべてのデータをクリーンアップし、変更後に再挿入することを忘れないでください。

于 2012-10-01T16:48:31.317 に答える
0

http://msdn.microsoft.com/en-us/library/ms186939.aspxで行くと、私はそれを言うでしょう

VARCHAR(n)CHARSETucs2は最も近いものです。しかし、これを使用している人はあまりいません。多くの場合、次の人が使用しています。

VARCHAR(n)CHARSET utf8私が知る限り、文字セットutf8とucs2はどちらも同じ文字を使用できますが、エンコードのみが異なります。したがって、どちらかが機能するはずです。使用頻度が高いので、おそらく後者を選択します。

MySQLのユニコードサポートには、ユースケースに適用される場合と適用されない場合があるいくつかの制限があります。MySQLのUnicodeサポートの詳細については、 http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.htmlを参照してください。

コピー元:mysqlと同等のデータ型

于 2012-10-01T16:44:55.740 に答える
0

ISO 8859-1には、実際には文字セットにアクセント付きのeがあります。見たところ、DBにはUTF8文字が含まれていますが、結果として、これらの厄介な外国文字が純粋な英語の文字にうまく作成されることはありません。あなたは合体でこれを行うことができます。結果をlatin1_swedish_ciのようなものに照合します。

varsには設定できるエントリもあるので、すべてのクエリで結合を指定する必要はないと思いますが、私はそれを調べるのが面倒です:p

于 2012-10-01T16:51:36.843 に答える