Oracle JDBC驱动程序不支持
getGeneratedKeys()-您正在触发器中手动生成密钥,大概是从中生成的
SEQUENCE。
您可以使用Oracle的returning子句:
String query = "BEGIN INSERT INTO team (name) values (?) returning id into ?; END;";CallableStatement cs = conn.prepareCall(query);cs.setString(1, "cougars");cs.registerOutParameter(2, OracleTypes.NUMBER);cs.execute();System.out.println(cs.getInt(2));
或使用第二个SQL查询获取最后一个序列号:
SELECt mysequence.CURRVAL FROM dual
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)