- - PR -
JDBC-ODBCブリッジでの日本語データ挿入
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-02-23 11:22
すみません。
素人みたいな質問ですが・・・ SQL ServerにJDBC−ODBCブリッジドライバ使って日本語のデータを以下のようなSQL文でインサートできません。 SQL文: INSERT TABLE1 VALUES('ほげほげ','TEST'); JDBC−ODBCブリッジで日本語は扱えないのでしょうか? | ||||
|
投稿日時: 2003-02-23 19:48
Insert区って INSERT INTO TABLE_NAME VALUES() じゃなかったでしょうか | ||||
|
投稿日時: 2003-02-24 10:42
返答ありがとうございます。
一応、例のSQL文は正しい構文です。 で、JDBC−ODBCブリッジで日本語項目の更新が出来ない件については結構有名なんですね? いろんなサイトで調べたらエンコーディングしないといけないようです。 String str = new String(sqlstmt.getBytes("SJIS"), "8859_1"); stmt.executeUpdate(str); しか〜し、これで一応インサートできましたが日本語が化けるんですよね。 なんででしょう? エンコーディングの指定が間違っているのでしょうか? サンプルにしたサイトの例ではこれで上手くいってるみたいですけどね。 うらやましい。 | ||||
|
投稿日時: 2003-02-24 11:46
まったく助言になっていませんでした泣
文字化けですか。。。。 JDK1.4では デフォルトでMS932 のコードが使われていたと思います。 ご参考までに。。。 | ||||
|
投稿日時: 2003-02-24 16:40
SELECT文で検索した場合、逆にエンコーディングすると文字化けして
エンコーディングしなければ正常に取得できました。 ということは、通常はエンコーディングしなくてもインサートできるのか? JDK1.2.2のJDBC−ODBCブリッジドライバの問題でしょうか? ちなみにJDK1.4では正常にインサートできました。(エンコーディングなしで) DBの設定とかODBCドライバーの設定等にも関係がありそうですが。 | ||||
|
投稿日時: 2003-02-25 10:47
どうやらJDKのバージョンは関係なさそうです。
Windows2000ではJDK1.2.2でも挿入、検索ともに日本語が使えました。 プラットフォームの問題のようですね。 いまどきWindows98もないと思いますが・・・ Javaってプラットフォームに依存する部分も結構あるような気がしますね。 文字コードの問題とか・・・ [ メッセージ編集済み 編集者: スロッター13 編集日時 2003-02-25 10:50 ] | ||||
|
投稿日時: 2003-02-25 14:59
すみません。
プラットフォームの問題でもなかったみたいです。 IBM独自仕様のJREが悪さしてるみたいです。 SUNのJRE1.2.2ではOKでした。 (開発はVisualAge for Java 4.0でやってます) 疲れた・・・ | ||||
1
