一些類,在前面的博客中有,就不重復了
public class Test2 {
TestDAO t=new TestDAO();
/*前提是數據表的主鍵是自動增加的,
*取得數據庫自動生成的主鍵
* */
@Test
public void testGetKeyValues() throws Exception{
Connection connection=null;
PreparedStatement preparedStatement=null;
try {
String sql="insert into customer(name,email,birth) values(?,?,?)";
connection=t.getConnection();
//在插入的同時獲得數據的主鍵值
preparedStatement=connection.prepareStatement(sql,
Statement.RETURN_GENERATED_KEYS);
//開始填充值:
preparedStatement.setString(1, "jiapa");
preparedStatement.setString(2, "aiqiyi.com");
preparedStatement.setDate(3,new Date(new java.util.Date().getTime()));
//更新操作
preparedStatement.executeUpdate();
//通過一個方法返回主鍵值
//通過getGeneratedKeys()方法,獲取了新生成的主鍵resultset對象
ResultSet rs=preparedStatement.getGeneratedKeys();
if(rs.next()){
System.out.println(rs.getObject(1));
}
ResultSetMetaData rsmd=(ResultSetMetaData) rs.getMetaData();
for(int i=0;i<rsmd.getColumnCount();i++){
System.out.println(rsmd.getColumnName(i+1)+":"
+rs.getObject(rsmd.getColumnName(i+1)));
}
} catch (Exception e) {
e.printStackTrace();
}finally {
t.close(connection, preparedStatement, null);
}
}
}