日期:2014-05-20  浏览次数:20770 次

oracle数据库插入数据id的小问题,在线等
求教:
oracle数据库插入数据id number(8);
用jdbc PreparedStatement stmt 
int id = user.getId(); 或者id = 1234;
stmt.setInt(1,id);//会报异常 Long列只能对应long值
但是用stmt.setInt(1,1234); 直接数值就可以
没用id做为变量
id = 1234 插也不可以


请问这是怎么回事,怎么改呢,


------解决方案--------------------
你的id是个int类型的,数据库字段是number,java里面要对应用long类型的。
------解决方案--------------------
int id = user.getId(); user是什么?
------解决方案--------------------
new Long(id)传进去试试;
------解决方案--------------------
id是自增主键吗?
------解决方案--------------------
探讨
id是自增主键吗?

------解决方案--------------------
Long id = 1234L;
------解决方案--------------------
Long id = 1234L;
------解决方案--------------------
lz先检查一下id是否时自增主键,个人比较认同时主键引起的问题