- PR -

文字化けについて

投稿者投稿内容
うぉっしゅ
会議室デビュー日: 2004/07/09
投稿数: 6
投稿日時: 2004-07-09 14:43
DBにMySQLを使用しています。
.Net画面の入力値をDBへそのまま登録しているのですが、
テキストボックスで \(半角エンマーク)と全角文字を一緒に入力されると
文字化けされたものがDBに登録されてしまいます。
文字化けさせないためにはエンコーディングが必要なのでしょうか?
またどのようにしたら良いのでしょうか?

どなたか教えて下さい。
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2004-07-09 14:57
「入力値をDBへそのまま登録」の具体的な操作が分からないことにはなんとも・・・・・
どうやって登録しているんですか?
うぉっしゅ
会議室デビュー日: 2004/07/09
投稿数: 6
投稿日時: 2004-07-09 15:05
画面のテキストボックスのテキスト(xxxx.Text)を、DataAdapterで作成したInsertコマンドに、何の変換も無く挿入しています。

具体的には下記のとおりです。

Me.DBConnection.Open()
Me.NewInsCmd.Parameters("xxxx").Value = xxxx.Text
Me.NewInsCmd.ExecuteNonQuery()
Me.DBConnection.Close()
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-07-09 17:50
MySQLのデータベースの文字種別は?
うぉっしゅ
会議室デビュー日: 2004/07/09
投稿数: 6
投稿日時: 2004-07-10 23:30
MySQLの文字種別は
default-character-setのことでよいのでしょうか?(スミマセン、無知なもので)default-character-setでよいのなら sjis です。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-07-11 14:13
ん?半角円マーク?MySQLの仕様をよく調べてください。半角円マークをエスケープ文字としていませんか?半角円マークを2つ重ねて登録すると、1つしか登録されないとか。
うぉっしゅ
会議室デビュー日: 2004/07/09
投稿数: 6
投稿日時: 2004-07-11 18:05
MySQLの仕様を調べてみました。
確かに、半角円マークがエスケープ文字になっていまた。
っということは、DBへの登録の際に \ を \\ に置き換えて登録する
ようにすればよいのでしょうか?
今日はテストできる環境がありませんので、明日試してみようと思います。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-07-12 08:54
引用:

うぉっしゅさんの書き込み (2004-07-11 18:05) より:

っということは、DBへの登録の際に を ¥ に置き換えて登録する
ようにすればよいのでしょうか?


おそらく、そういうことです。取り出しは、1つの円マークで返ってくると思います。

スキルアップ/キャリアアップ(JOB@IT)