在用JdbcTemplate进行插入的时候发现一个很奇怪的错误 5C

我先用StringBuffer把sql语句拼接起来(sb="sql1;sql2;"),
再用jdbcTemplate.batchUpdate(sql);执行,数据能全部插入数据库,但是框架报了错误:
org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL[Sql语句]
SQL state [null]; error code [0]; An SQLException was provoked by the following failure: java.lang.ArrayIndexOutOfBoundsException: 1; nested exception is java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.ArrayIndexOutOfBoundsException: 1

以下是sql:insert into enterarea(writeTime,commitTime,coCode,serialNumber,relTransNo,msgUid,trafMode,shipNameEn,voyageNo,billNo,orgCode,goodsNo,cargoCrossId,unitCode,quantity) values('2017-11-09 16:35:20','20171109163520','NII1X8N','NII1X8N2017110999728934377','NII1X8N2017110999728934377','','ky','','','','311010',1,'310010062810001100001','null',32)

4个回答

JdbcTemplate的batchUpdate方法不是这样用的吧?!是传一个sql模板过去,后面是传一个参数的list过去就可以了,而不是传两条sql过去的~
(这里面也涉及到sql的预编译知识,可以了解下)

为了保证数据安全建议用事务提交

貌似这样用才对吧jdbcTemplate.queryForList(sb.toString());

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐