MySQL4.0.23です。

’―’この文字をデータベースに格納することができません。

ex.
fld2はvarcharもしくはtextです。
insert into table (fld1,fld2) values (1,’―’)
’―a’などのにように何か文字を足してやれば格納できるのですが、化けて登録されてしまいます。
このような特殊文字列は他にもありますか?または機知のバグであるかどうか、どこで調べればよいですか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/04/26 16:54:33
  • 終了:--

回答(3件)

id:FMR No.1

FMR回答回数406ベストアンサー獲得回数02005/04/26 17:14:17

ポイント10pt

http://iandeth.dyndns.org/mt/ian/archives/000111.html

MySQL 4.1 日本語環境での使用時の注意点/関連情報まとめ (iandeth.)

「―」は全角ですよね

その場合文字コードを統一してますでしょうか?

テーブル作成時に指定しておき入力の際も統一する事をおすすめします。

id:nakeyouguisu

「―」は全角です。

2005/04/26 19:28:26
id:yyaibo No.2

yyaibo回答回数89ベストアンサー獲得回数02005/04/26 20:13:51

ポイント10pt

http://66.102.7.104/search?q=cache:8mHmxHkveiIJ:www.atmarkit.co....(1,%E2%80%99%E2%80%95%E2%80%99)&hl=ja&lr=lang_ja:detail]

ブラウザから取得したパラメータが正しくデコードできていますでしょうか?

以下のようにサーブレットで実行して問題なく登録できます。

req.setCharacterEncoding(”Windows-31J”);

String key = (String)req.getParameter(”key”);

String sql = ”insert into temp_key (dkey) values(?)” PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, key);

int rc = ps.executeUpdate();


PostgresのデータベースのエンコーディングはEUC_JP

JDBCのドライバはPostgres8.0Win版に付属のpostgresql-8.0.309.jdbc2ee.jar

で試してみました。

参考まで。

id:nakeyouguisu

わざわざ試していただいて、ありがとうございます。

なるほど、ポストされた段階でのブラウザ側の文字化けですか。ツール(ブラウザ系myAdmin)から登録してもだめだったので考えから抜けていました。調べてみます。

2005/04/28 17:22:15
id:dhalmel No.3

でぐちきり回答回数100ベストアンサー獲得回数22005/04/28 13:43:58

ポイント50pt

http://www.kent-web.com/pubc/jcode/

文字化けについて

指定している文字コードがShift_JISの場合、

この文字のコードの末尾が「5C」であるため、文字化けの原因となってしまっているのかと思います。

同様の文字に「表」「十」「圭」などがあります。

id:nakeyouguisu

おっしゃる通りSJISです。

なるほど。

「ソ」や「表」がダメなのはいたいですね。

非常に参考になりました。

2005/04/28 17:22:56

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません