求助jdbc调用存储过程问题!!!!!!!!!!!!!

sinat_35303062 2016-12-05 10:54:51
用jdbc调用存储过程,插入一个记录,但是总是出现com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'Â 12' in 'field list'的错误,
好像是把参数值当作列名了???
代码如下:
public static void testSP() throws Exception
{
CallableStatement callStmt = null;
Connection conn = null;
java.sql.Date currentDate = new java.sql.Date(System.currentTimeMillis());
try
{
conn = ConnDao.getInstance().getConnection();
callStmt = conn.prepareCall("{call JSDMP_PKG_T_CARD_APPINFO_SP_Insert( ?, ?, ?, ?, ?, ?, ?)}");


callStmt.setInt(1, 12);

callStmt.setLong(2, 2);
callStmt.setLong(3, 3);
callStmt.setLong(4, 4);
callStmt.setLong(5, 5);
callStmt.setLong(6, 6);


callStmt.setDate(7, currentDate);
System.out.println("hhaha");

int isOk = callStmt.executeUpdate();
System.out.println(isOk);


}catch(Exception e)
{
e.printStackTrace();
}finally
{
if (null != callStmt) {
callStmt.close();
}
if (null != conn) {
conn.close();
}
}


}




数据库代码:
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `JSDMP_PKG_T_CARD_APPINFO_SP_Insert`(
IN `var_cardID` INTEGER,
IN `var_appNO` INTEGER,
IN `var_appType` INTEGER,
IN `var_appState` INTEGER,
IN `var_appID` INTEGER,
IN `var_initFlag` INTEGER,
IN `var_lastAppDate` DATE
)
BEGIN
declare id_no int;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
END;
insert into t_card_appinfo
values
(last_insert_id(id_no)+1,
var_cardID,
var_appNO,
var_appType,
var_appState,
var_appID,
var_initFlag,
var_lastAppDate,
1,
now());
commit;

END$$
DELIMITER ;
...全文
235 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rotel-刘志东 2016-12-06
  • 打赏
  • 举报
回复
跟踪一下你的sql看一下执行是否正常
致命的西瓜 2016-12-05
  • 打赏
  • 举报
回复
你的表列数和插入 value对应不上
致命的西瓜 2016-12-05
  • 打赏
  • 举报
回复
引用 4 楼 sinat_35303062 的回复:
可以说的具体点吗?是 类型 对应不上,还是参数数量???
把你的参数放到过程sql里手动跑一下看看
sinat_35303062 2016-12-05
  • 打赏
  • 举报
回复
引用 1 楼 wangjian0228 的回复:
你的表列数和插入 value对应不上
可以说的具体点吗?是 类型 对应不上,还是参数数量???
sinat_35303062 2016-12-05
  • 打赏
  • 举报
回复
哪里来的A?? 12 是我传入的 输入参数,怎么变成列名了????可以说的具体点吗??
LongRui888 2016-12-05
  • 打赏
  • 举报
回复
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'Â 12' in 'field list'的错误, 应该是列 A 12 没有在字段列表里,导致的报错 insert into t_card_appinfo 后面最好加上具体的列 (...)

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧