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

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

WBOY
WBOYOriginal
2016-06-07 15:22:391373browse

这段代码是为了解决,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();
			}
		}
	}
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn