- - PR -
executeBatchについて
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2002-09-24 10:45
こんにちわ。みーちくと申します。
現在下記のようなシステム設定でJAVAの開発をしております。 DBでトランザクション処理をしようと思い、Statement.addBatchでPostgres に接続したところ下記のようなエラーが出ました。 一番はじめの行の at org.postgresql.jdbc2.Statement.executeBatch(Unknown Source) ↑Unknown Sourceと書いてあります。 たしか、Statement.addBatchを使えるJDBCのバージョンは2.0からだと思うのですが。 まだ、設定がおかしいのでしょうか? 全部で6テーブルにinsertしたいと考えており、はじめの1個目でエラーとなっております。 Javaの開発を始めて、まだ1ヶ月もたっていない未熟者ですが、宜しくお願い致します。 【システム設定】 RedHat7.1/apache1.3.26/tomcat3.2.3/ant1.4.1/jdk1.3.1/postgresql7.2.1 【エラーメッセージ】 [root@gateway bin]# Batch entry 0 insert into s_apply_tbl (product_no, apply_flg, product _name, client_cd, client_name, saihan_flg, old_product_no, start_hope_date, finish_plan_date, stock_flg, approval_flg, sys_user_name, sys_del_id) values ('11111111',1,'DBテスト','333333','株式会社テスト テスト事業部',0,'','1001', '1030',0,0,'sinsei',0) was aborted. at org.postgresql.jdbc2.Statement.executeBatch(Unknown Source) at Turbo.AddDB.doInsert(AddDB.java:75) at Turbo.AddServlet.service(AddServlet.java:180) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405) at org.apache.tomcat.core.Handler.service(Handler.java:287) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:812) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:758) at org.apache.tomcat.service.connector.Ajp13ConnectionHandler.processConnection (Ajp13ConnectionHandler.java:160) at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501) at java.lang.Thread.run(Thread.java:479) [root@gateway bin]# |
|
投稿日時: 2002-09-30 10:24
自己レスです。
いろいろ調べてみたのですが。 java.sql └DatabaseMetaData(データベースに関する包括的な情報です。) └supportsBatchUpdates(バッチ更新が可能かどうか) というのがありましたので調べてみたのですが、「true」がかえってきました。 JDBCドライバーは対応しているみたいなのですが。 どうしても、executeBatch(Unknown Source) となってしまいます。 今回はBatchを使用しないで作成を進めているのですが、どなたかこの原因がわかる方 いっらっしゃいますか? 調べた時のソースを載せておきます。 try{ con = DriverManager.getConnection(jdbcUrl, jdbcUser, jdbcPass); DatabaseMetaData dmd = con.getMetaData(); System.out.println("Batch:"+ dmd.supportsBatchUpdates()); } |
1
