電子書籍の厳選無料作品が豊富!

DB MySQL
カラム:name varchar(255),ucs2_bin
データ:てすと

上記のデータを下記の処理で(VB.Net)取得しようと
すると文字が化け(????)て取得されてしまうのですが
デコードの仕方が良く分かりません。
System.Text.~を使うと思うのですが何を指定したら
いいのか分からないのでご教授お願い致します。

ちなみに言語は日・中・英と対応する必要があります。

--処理--
Dim conn As New MySQLConnection( _
String.Format("Port={0};Server={1};Data Source={2};User ID={3};Password={4}", _
port, computer, database, user, password))

Dim cmd As MySQLCommand
Dim red As MySQLDataReader

conn.Open()

Dim sql = "select name from test"
cmd = New MySQLCommand(sql, conn)
red = CType(cmd.ExecuteReader(), MySQLDataReader)

Do While red.Read
Console.WriteLine(red("NAME"))
Loop

red.Close()
cmd.Dispose()

A 回答 (1件)

MySQLは環境が無いので、正確には述べれませんが、参考程度のボヤキと思ってください。



「MySQL+文字化け」
のキーワードでググると、iniの情報やキャラクタセットの情報がひっかかります。

さらに
「コードページ+国際化対応」
でググると、「Unicode」が出てきます。

MySQLのiniの設定も、.NET側のキャラクタセットも「Unicode」にしてみてはいかがでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!