pstmt=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
然后处理完了ResultSet rsKey=pstmt.getGeneratedKeys(); //1
rsKey.next(); //2
int orderid = rsKey.getInt(1);//3
DEBUG结果是前面全没问题包括1,2两步都对的,并且rsKey.next()为TRUE。在执行第3步后跳到异常,提示
java.sql.SQLException: 无效的列类型: getInt not implemented for class oracle.jdbc.driver.T4CRowidAccessorat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.Accessor.unimpl(Accessor.java:357)
at oracle.jdbc.driver.Accessor.getInt(Accessor.java:467)
at oracle.jdbc.driver.OracleReturnResultSet.getInt(OracleReturnResultSet.java:265)
.....
很郁闷,弄了一整天了。不知道怎么回事。望高手解答,万谢啊我补充一下,我的主键是seq_id.nextval这样插入的,
然后处理完了ResultSet rsKey=pstmt.getGeneratedKeys(); //1
rsKey.next(); //2
int orderid = rsKey.getInt(1);//3
DEBUG结果是前面全没问题包括1,2两步都对的,并且rsKey.next()为TRUE。在执行第3步后跳到异常,提示
java.sql.SQLException: 无效的列类型: getInt not implemented for class oracle.jdbc.driver.T4CRowidAccessorat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.Accessor.unimpl(Accessor.java:357)
at oracle.jdbc.driver.Accessor.getInt(Accessor.java:467)
at oracle.jdbc.driver.OracleReturnResultSet.getInt(OracleReturnResultSet.java:265)
.....
很郁闷,弄了一整天了。不知道怎么回事。望高手解答,万谢啊我补充一下,我的主键是seq_id.nextval这样插入的,
解决方案 »
- 关于servlet getDeclaredFields0(boolean) line: not available [native method]
- 象我这样写 连接 和 关闭 数据有问题吗?
- mysql生成hibernate映射文件外键不能生成
- 各位大哥,问一个简单的问题
- 为什么我的<html:file>标签不能用
- useBean的时候,不等bean执行完就显示页面,如何做?
- java程序员面试题(基础部分),答者送分
- jsp+sql2005 插入数据库时中文乱码,使用了过滤器,用utf-8编码
- 没分了,问一个jsp连接数据库问题
- 常识性问题
- 开源喽,特别适合新手学习的一个系统。附有一个快速入门计划!
- 数据库表多对多问题(跪求)
create table t_part
(
p_id number(8) primary key, --部门编号(自增列)
p_name varchar2(20), --部门名称
p_re varchar2(1000) --部门介绍
)
--创建seq_partid序列
create sequence seq_partid
start with 1
nocache;
--实现p_id 的自动增长
create or replace trigger tri_partid
before insert on t_part
for each row
begin
select seq_partid.nextval into :new.p_id from dual;
end; --插入数据
insert into t_part values(7,'销售一部','销售好销售妙');
insert into t_part values(0,'销售二部','销售好销售妙');
添加的时候id就无所谓怎么填了