现有系统环境java+sqlserver2000 jdbc2.0现在有个系统要集成进来,是sqlserver2005的,要在2005数据库中增加记录并用到自动获取自增主键值。
String sql ="insert tb(..)values() "; Class.forName(driver).newInstance();
connection = DriverManager.getConnection(url, user, password);
Statement stmt = connection.createStatement();
stmt.execute(sql);
//这个在jdbc3.0下应该没问题,但用jdbc2.0不行
stmt.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);如何用jdbc2.0的方法,在sqlserver2005中插入数据时,自动获取插入后自增主键的值呢?谢谢!
String sql ="insert tb(..)values() "; Class.forName(driver).newInstance();
connection = DriverManager.getConnection(url, user, password);
Statement stmt = connection.createStatement();
stmt.execute(sql);
//这个在jdbc3.0下应该没问题,但用jdbc2.0不行
stmt.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);如何用jdbc2.0的方法,在sqlserver2005中插入数据时,自动获取插入后自增主键的值呢?谢谢!
解决方案 »
- weblogic10 配置完后,login报错:No action instance for path /DashBoardAction could be cr
- Myeclipse使用创建jsp的问题
- 关于jsp的一个计数器
- JSP运行一段时间之后CPU占用为100%
- 求助各位大侠:怎么用jsp实现文件的上传和下载 急
- jsp连接DB2问题
- 大家帮我一下,这个怎么实现。
- response.setContentType("text/html;charset=gb2312");如果没有这行语句,客户端是什么样的contentType?
- 100分求JBUILDER的电子图书下载地址学习用
- java练习ssm框架整合问题
- jdbc简单的封装
- java网页截屏
java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseStatement.executeUpdate(Ljava/lang/String;I)I 是sqlserver版本和驱动的问题,我是想能不能在jdbc2.0的驱动下获取sqlserver2005的自增主键值??
select @@identity
select @@identity是放入sql插入语句的后面吗? 这样用executeQuery()还是executeUpdate()??
又该如何获取该值呢?
ResultSet rs = stmt.executeQuery(sql);
int keyValue = -1;
if (rs.next()) {
keyValue = rs.getInt(1);
}
这是解决办法,谢谢各位大虾!