第一步创建sql
第二步通过connection.prepareStatement(sql,主键) 来创建预编译对象
第三步 为sql中的占位符赋值
第四步,执行sql
第五步获取执行sql的结果
第六步通过ResultSet对象获取返回的主键
public boolean AdvertAdd(Advert ad) throws SQLException {
String sql = "insert into advert (ad_ico,ad_desc,ad_isdisable,ad_url,areaid,ad_type,_type,_title,orderasc) values (?,?,?,?,?,?,?,?,?)";
getConnection();
// 指定返回生成的主键
pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
pstmt.setString(1, ad.getAd_ico());
pstmt.setString(2,ad.getAd_desc());
pstmt.setInt(3, ad.getAd_isdisable());
pstmt.setString(4,ad.getAd_url());
pstmt.setInt(5,ad.getAreaid());
pstmt.setInt(6,ad.getAd_type());
pstmt.setInt(7,ad.getType());
pstmt.setString(8,ad.getTitle());
pstmt.setInt(9,ad.getOrderasc());
pstmt.executeUpdate();
rs = pstmt.getGeneratedKeys();
int id=0;
if (rs.next()) {
id = rs.getInt(1);
System.out.println("数据主键:" + id);
}
ad.setId(id);
return true;
}