求助jdbcTemplate 调用db2存储过程异常

问题描述

异常信息java.lang.IllegalArgumentException:Nostatementspecifiedatorg.springframework.util.Assert.notNull(Assert.java:90)atorg.springframework.jdbc.datasource.DataSourceUtils.applyTransactionTimeout(DataSourceUtils.java:206)atorg.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:803)atworkbench.apps.cc.functions.dataTrans.batch.CustTransService.transAcCustToClNew(CustTransService.java:99)atworkbench.apps.cc.functions.dataTrans.batch.CustTransJobTask.transCust(CustTransJobTask.java:32)atworkbench.apps.cc.functions.dataTrans.batch.CustTransJobTask.run(CustTransJobTask.java:14)方法如下HashMapreturnMap=(HashMap)this.getJdbcTemplate().execute(newCallableStatementCreator(){publicCallableStatementcreateCallableStatement(Connectioncon)throwsSQLException{StringstoredProc="{call"+procedureName+"(?,?,?,?,?)}";//调用的sqlCallableStatementcs=con.prepareCall(storedProc);cs.setDate(1,newjava.sql.Date(DateUtils.getBusinessDate(DataTransConstants.CASETYPEID).getTime()));//设置输入参数的值cs.registerOutParameter(1,Types.INTEGER);cs.registerOutParameter(2,Types.INTEGER);cs.registerOutParameter(3,Types.INTEGER);cs.registerOutParameter(4,Types.INTEGER);returncs;}publicCallableStatementcreateCallableStatement(java.sql.Connectionarg0)throwsSQLException{returnnull;}},newCallableStatementCallback(){publicObjectdoInCallableStatement(CallableStatementcs)throwsSQLException,DataAccessException{cs.execute();HashMaprtMap=newHashMap();rtMap.put("errorCode",newInteger(cs.getInt(1)));rtMap.put("needDeal",newInteger(cs.getInt(2)));rtMap.put("DealedTotal",newInteger(cs.getInt(3)));rtMap.put("failedTotal",newInteger(cs.getInt(4)));returnrtMap;//获取输出参数的值}});HashMapreturnMap=(HashMap)this.getJdbcTemplate().execute(就是个事务报错,一直没找到原因

解决方案

时间: 2024-10-03 20:41:24

求助jdbcTemplate 调用db2存储过程异常的相关文章

C#通过ODBC调用DB2存储过程

odbc|存储过程   DB2版本:DB 2 UDB 8.X For Linux  在.Net 中 ,用odbc调用db2存储过程,不能使用这种类似Oledb(ADO)调用存储过程的常用方法: System.Data.Odbc.OdbcCommand cmd=null; System.Data.Odbc.OdbcConnection con =new System.Data.Odbc.OdbcConnection(System.Configuration.ConfigurationSetting

.net 调用oracle 存储过程 异常问题

问题描述 调试的我已经无力了!现在的情况是在oralce直接call'pro_name'是没问题的,执行N次都是成功的但在程序中去调用存储过程第一次是正常的第二次就出现ORA-00936:missingexpression有没遇到过这种问题的..已经无力了 解决方案 解决方案二:先填个吭解决方案三:没碰到过....

java调用db2存储过程返回参数中文乱码

问题描述 1.存储过程--DROPPROCEDUREDB2ADMIN.GETNODENAMEPROC;CREATEPROCEDUREGETNODENAMEPROC(INv_clidVARCHAR(20),INv_nodeidVARCHAR(20),OUTv_nodenameVARCHAR(1000))LANGUAGESQLSPECIFICGETNODENAMEPROCMODIFIESSQLDATA--------------------------------------------------

db2-使用jdbctemplate插入数据到DB2出现异常 不能完全插入

问题描述 使用jdbctemplate插入数据到DB2出现异常 不能完全插入 使用jdbctemplate插入数据到DB2出现异常 不能完全插入 插入1000条 只能成功900多条 插入100条 只能成功90多条 08:54:30.784 [main] DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource 08:54:30.784 [main] DEBUG o.s.j.d.Driv

db2存储过程如何理解,什么时间被调用

问题描述 db2存储过程如何理解,什么时间被调用 db2的存储过程如何理解?什么时间被调用!里面用到的关键词都有哪些?具体什么意思?

各位帮我看下VB调用oracle存储过程的一个异常

问题描述 各位帮我看下VB调用oracle存储过程的一个异常 接了一个接口的活,VB写的,调用第三方提供的存储过程出现一个异常,如下:System.Data.OleDb.OleDbException: 未指定的错误 at System.Data.OleDb.OleDbCommand.ProcessResults(Int32 hr) at System.Data.OleDb.OleDbCommand.InitializeCommand(CommandBehavior behavior Boolea

C# 调用oracle存储过程提供“外部组件发生异常”

问题描述 调用的存储过程createorreplaceprocedureproc3(v_recountoutnumber)asbeginselectcount(*)intov_recountfromtb_dms_status;commit;end;usingOracle.DataAccess.Client;OracleConnectionoc=db.GetConnection();oc.Open();OracleCommandocm=oc.CreateCommand();ocm.CommandT

DB2 存储过程开发最佳实践

转自http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0604changhp/   DB2 存储过程开发最佳实践 常 伟 (changwei@cn.ibm.com), 软件工程师,IBM CSDL 常红 平 (changhp@cn.ibm.com), 软件工程师,IBM CSDL 简介: 本 文以 DB2 开发人员的角度介绍了在 DB2 存储过程开发中需要注意的事项和技巧.新手如果能够按照本文介绍的最佳实践来开发存

在.NET中调用Oracle9i存储过程经验总结

oracle|存储过程 在.NET中调用Oracle9i存储过程可以用多个数据提供者,比如OralceClient,OleDb.本文将用OralceClient为例..NET语言用C#. 一.调用一个带输入.输出参数的存储过程 首先,在Oralce中创建存储过程如下: create or replace procedure GetRecords(name_out out varchar2,age_in in varchar2) as begin select NAME into name_out