日期:2014-05-16  浏览次数:20485 次

JDBC插入返回自动增长列的值
JDBC插入返回自动增长列的值,很多时候我们要先执行一条insert语句,在执行一条查询语句,这样可能会出现多线程的情况,可能会查询错ID,如果使用这种在插入后立即返回当前自增长的的值就永远不会错乱ID了.
                         conn = getConnection() ;  //获取数据库链接,这里就不加说明了
			/*执行预处理语句,设置一个自增长列*/
			ps = conn.prepareStatement(sql , 1 ) ; 
			/*循环设置参数*/for(int x=0;x<param.length;x++){
				ps.setObject(x + 1 , param[x]) ; 
			} 
			ps.executeUpdate() ; /*执行更新*/
			rs = ps.getGeneratedKeys(); /*获取主键增长列的结果集*/
			while (rs.next()) {
				return rs.getInt( 1 ) ;  /*返回主键增长信息*/
		    }
			return 0 ;