- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Java環境で使用するAccessデータベースについて)
Java環境で使用するAccessデータベースについて
このQ&Aのポイント
- Java環境でAccessデータベースを使用する際に、パラメータが少なすぎるエラーメッセージが表示される問題が発生しました。
- AccessのODBCドライバ(MDAC2.5)を使用したSQL文では二重引用符(”)を文字列リテラルとして使用できないため、問題を回避する方法を知りたいです。
- 開発環境はWindows XPで、DBはMicrosoft Access 2002、j2sdkは1.4.2_05、Tomcatは4.1.30を使用しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
クォートが全角なのは記載ミスですよね。 例えば、wkkanri に K001 、wkroom に 101 とか入っている として、Accessに渡したいSQLは insert into kihon(kanri_No,room_No) values('K001',101) になります。 しかしお書きになった内容は insert into kihon(kanri_No,room_No) values(wkkanri,wkroom) なので、Access側ではエラーになります。 String sql に連結させて、正しいSQLを動的に作ってあげないと。 String sql = "insert into kihon(kanri_No,room_No) values('" + wkkanri + "'," + wkroom + ")"; とかでは? DB側の型がわからないので、その辺は自助努力で。 もしくはパラメータバインドと言う方法もありますが、まずは 今のやり方を完遂させた方がよいでしょう。
お礼
全角なのは、環境が別の為、一旦Wordへ打ってそれを貼り付けてしまったからです。油断しました(汗) 頂いたアドバイスを元に何とかDBへの情報登録が出来るようになりました。 御礼が遅くなりましたが、有難う御座いました。