- - PR -
Accessへのupdateについて
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-01-06 13:17
返信、ありがとうございます。
シングルクォーテーションを#に変更してやってみましたが、うまくいきませんでした。。 以下、変更後の記述文です。 String sql = "update FileList set " + "num='" + num + "', " + "filename='" + filename + "', " + "date=#" + date + "#" + " where num ='" + num + "'"; | ||||
|
投稿日時: 2003-01-06 14:13
>H2さん
あけましておめでとうございます。 せっかくご返信いただいていたのに、気づきませんでした。。。ごめんなさい。。 最後の ; 、試してみましたがだめでした。 先ほどから、みなさんのおっしゃっているsqlのプリントアウトというのは 具体的にはどうやってやるものなのですか?すみません、初歩的に質問で。。。 | ||||
|
投稿日時: 2003-01-06 14:18
おおっ、分かりました。dateはキーワードなので[]でくくる必要があります。多分;も必要です。
これでどうでしょう? String sql = "update FileList set " + "num='" + num + "', " + "filename='" + filename + "', " + "[date]='" + date + "' where num ='" + num + "';"; プリントアウトは System.err.println(sql); とか System.out.println(sql); でよいかと。 | ||||
|
投稿日時: 2003-01-06 14:36
>H2さん
エラー内容が変わりました!!内容は以下のとおりです。 【エラー内容】 抽出条件でデータ型が一致しません。 sqlのプリントアウトに関しまして、System.outを使ってるのですが、いかんせんJSPの表示でエラーがでてしまうため、表示するにはどうやったらいいのかなと思っております。 質問ばかりですみません。。。よろしくお願いします。 | ||||
|
投稿日時: 2003-01-06 16:37
System.outへの出力はコンテナのログにのってないでしょうか?
Tomcat4.xだったらcatalina.outとかなんですけど。 それが見れなければ、自分でFile I/O書いて指定したファイルに出力するとか。 | ||||
|
投稿日時: 2003-01-06 16:48
>まりりさん
ありがとうございます。このエラーはtomcatのエラー画面でみていたものと同じモノでした。。。ごめんなさい。以下、内容です。 【内容】 2003-01-06 16:42:51 StandardWrapperValve[jsp]: サーブレット jsp のServlet.service()が例外を投げました javax.servlet.ServletException: [Microsoft][ODBC Microsoft Access Driver] 抽出条件でデータ型が一致しません。 at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:463) at org.apache.jsp.update$jsp._jspService(update$jsp.java:129) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:429) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:495) at java.lang.Thread.run(Thread.java:536) | ||||
|
投稿日時: 2003-01-07 11:01
> 抽出条件でデータ型が一致しません。
これは型が違うものをデータベースに入れようとしているからですね。numが本当に数字型か、dateが日付型になっているのかを確認してください。 それからsqlのプリントの仕方ですが、try...catch文でエラーをキャッチして、変数にメッセージを入れてJSP内で表示すれば良いと思います。サンプルです。適宜修正して使ってください。(ちゃんと調べて書いてないのでちゃんと書き直してくださいね)本当はデバッガとかを使った方がいいのですけどね。
[ メッセージ編集済み 編集者: H2 編集日時 2003-01-07 11:03 ] | ||||
