>  기사  >  데이터 베이스  >  Java获取数据库自增主键表中插入数据的ID

Java获取数据库自增主键表中插入数据的ID

WBOY
WBOY원래의
2016-06-07 15:22:391383검색

这段代码是为了解决,JDBC中在给自增表插入数据后获取插入数据自动生成的ID问题。上网找了半天资料,原来在JDK中有提供方法哎。 参考资料点击打开链接感谢诸位高手的指点。 直接上代码吧: /** * 自增主键主键插入值后获取自增ID * @param sql * @return */p

这段代码是为了解决,JDBC中在给自增表插入数据后获取插入数据自动生成的ID问题。上网找了半天资料,原来在JDK中有提供方法哎。

参考资料点击打开链接感谢诸位高手的指点。

直接上代码吧:

	/**
	 * 自增主键主键插入值后获取自增ID
	 * @param sql
	 * @return
	 */
	public int insertIntoDB(String sql){
		Connection conn = null;
		Statement state = null;
		ResultSet rs = null;
		int key = -1;
		try{
			conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jx3", "root", "root");
			state = conn.createStatement();
			state.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);
			rs = state.getGeneratedKeys();
			if(rs.next()){
				key = rs.getInt(1);
			}
			return key;
		}catch (SQLException e) {
			e.printStackTrace();
			return key;
		}finally{
			try{
				if(rs != null){
					rs.close();
					rs = null;
				}
				if(state != null){
					state.close();
					state = null;
				}
				if(conn != null){
					conn.close();
					conn = null;
				}
			}catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.