- - PR -
servlet&jsp Access2002追加書き込み不具合について
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-01-25 11:21
"jokers"です。宜しくお願いします。
Jsp、servletにてパッケージを作成中ですが、以下の不具合が発生致しました。 *追加書き込み時に氏名等、日本語するフィールドに全文字書き込みできません。 例えば、「山田太郎」と入力して、書き込みを実行すると「山田」となり、氏名の「太郎」 が欠如したり、今度は「やまだたろう」と入力してみると「やまだた」というふうに全文字 追加されない。 *英字は問題ないようです。 *いろいろなパターンにてテストを行ったが、特殊文字とか特定の文字が読み込めないというわけではないようです。 パッケージの概要としては、会員名簿を入力し、確認画面を表示、登録ボタンを押すとDB(access2002)に追加書き込みされるというシンプルなものです。 作成状況及び動作環境として HTML 入力画面 JSP 入力必須項目欠如の際に入力済の画面を戻すためにJSpを使用(sessionを使用) servlet 登録確認画面と追加書き込みのSQL作成実行等 encoding Shift_JISにて統一(decodeは行っていない) access2002のフィールド設定(テキスト指定 フィールド長最大255,ちなみにメモ指定に て行ってみましたが上記の状況はかわらず) "sun.jdbc.odbc.JdbcOdbcDriver"を使用 prepareStatementを使用 visuaLAge for java(ver4.0)テスト環境にて//J2SDK ver1.2.2を使用できるどのプラッ トフォームでも実行するアプレット、サーブレット、アプリケーションできるものです。 OS:windowsMeにて マシンスペックは1年前に購入した最新機種にてその面での問題はないように思われます。 最近この会議室にトピックとして上がった評判の良くないjdbcドライバーに起因するものか、MSaccess2002DBに起因するものか、はたまた、上記のJAJ4.0に起因するものか(IBMの技術フォーラムにもアップしておりますが)ちょっと判断がつかないものですから、諸先輩方のアドバイスを宜しくお願いしたいと思い、アップさせて頂きました。(^^?)⇒(^^!) 宜しくお願い申し上げます。 | ||||
|
投稿日時: 2003-01-25 16:07
原因うんぬんを言う前に、まず状況の切り分けが必要です。
同じようなDBアクセスをWebと関係ないコンソールから起動するJavaプログラムから行ってみてください。 問題がWebまわりにあるのか、そのJDBCドライバにあるのかがはっきりします。 | ||||
|
投稿日時: 2003-01-26 12:31
大変申し訳ございません
コンソールメッセージを確認せず投稿してしまいました。 java.sql.SQLException: Driver does not support this function java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) java.sql.SQLException(java.lang.String, java.lang.String) と出ておりますので、ドライバーに起因するエラーだとは思いますが、他のものに入れ替えすればいいのかどうか。 何を使用すればいいのでしょうか。 | ||||
|
投稿日時: 2003-01-26 15:10
他の、その機能がサポートされているJDBCドライバに入れ替えれば、たぶん問題は解決するでしょう。 他のドライバの一覧はこちら↓ http://industry.java.sun.com/products/jdbc/drivers ただ、prepareStatementを使われていると言うことですが、これをprepareStatementを 使わない形式に置換したらどうなりますか? 経験則としてはパフォーマンスが犠牲になるものの、処理的にはうまく行くことの方が多いように思います。 この場合も、JDBC-ODBCドライバの特性(というより制約事項)を熟読されることをお勧めします。 とりあえずFAQになっているものはこちら↓ http://java.sun.com/products/jdbc/faq.html _________________ -- parolibre | ||||
1
