1

MySqlDBに接続されたasp.netページがあります。

WebページからDBに値を挿入/更新しようとすると、文字が疑問符としてDBに表示されます(SPを使用しています)。DBに直接クエリを書き込むと、それが機能し、文字が正しく表示されます。

DBのデフォルトの文字セットはutf8であり、列の照合はutf8_general_ciです。

10倍たくさん&素晴らしい週末をお過ごしください:)

4

2 に答える 2

5

最終的に私の問題を解決したのは、接続文字列にCharSet=utf8を追加することです。

みんな10倍:)

于 2011-02-18T18:07:58.930 に答える
1

あなたのC#文字列はUTF8ではなくUnicodeとして扱われていると思います

しばらく前に見つけたスニペットのサンプルコード:

System.Text.Encoding utf_8 = System.Text.Encoding.UTF8;

// This is our Unicode string:
string s_unicode = "abcéabc";

// Convert a string to utf-8 bytes.
byte[] utf8Bytes = System.Text.Encoding.UTF8.GetBytes(s_unicode);

// Convert utf-8 bytes to a string.
string s_unicode2 = System.Text.Encoding.UTF8.GetString(utf8Bytes);

MessageBox.Show(s_unicode2);
于 2011-02-18T17:58:24.117 に答える