一.增
@Test
public void testInsert() throws Exception {
try(Connection con = ConnectDB();
Scanner input = new Scanner(System.in)){
System.out.print("请输入姓名:");
String ename = input.next();//李四
System.out.print("请输入薪资:");
double salary = input.nextDouble();//15000
System.out.print("请输入出生日期:");
String birthday = input.next();//1990-1-1
System.out.print("请输入性别:");
char gender = input.next().charAt(0);//男
// String gender = input.next();
System.out.print("请输入手机号码:");
String tel = input.next();//13578595685
System.out.print("请输入邮箱:");
String email = input.next();//zhangsan@atguigu.com
//编写sql
String sql = "insert into t_employee(ename,salary,birthday,gender,tel,email,hiredate) " +
"values(?,?,?,?,?,?,curdate())";
//告诉数据库执行 INSERT 操作后,返回自动生成的主键值(比如自增 ID)
PreparedStatement preparedStatement = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
//需要填写?对应的值
preparedStatement.setObject(1, ename);
preparedStatement.setObject(2, salary);
preparedStatement.setObject(3, birthday);
preparedStatement.setObject(4, gender + "");//char变为String类型
preparedStatement.setObject(5, tel);
preparedStatement.setObject(6, email);
int len = preparedStatement.executeUpdate();
if(len > 0){
System.out.println("添加成功! len = " + len);
}else{
System.out.println("添加失败!");
}
preparedStatement.close();
}
}
一个关于PeparedStatement的insert的错误

二.删
@Test
public void testDelete() throws Exception {
String sql = "delete from t_employee where eid = ?";
try(Connection con = ConnectDB();
PreparedStatement ps = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);){
ps.setInt(1,32);
int len = ps.executeUpdate();
if(len > 0){
System.out.println("删除成功! len = " + len);
}else{
System.out.println("删除失败!");
}
}
catch (Exception e){
e.printStackTrace();
}
}

三.改
@Test
public void testUpdate() throws Exception {
try(Connection con = ConnectDB();
PreparedStatement ps = con.prepareStatement("update t_employee set ename = ? where eid = ?");
Scanner input = new Scanner(System.in)){
System.out.println("请输入要修改的姓名:");
String ename = input.next();
System.out.println("请输入要修改的员工ID:");
int eid = input.nextInt();
ps.setString(1,ename);
ps.setInt(2, eid);
int len = ps.executeUpdate();
if(len > 0){
System.out.println("修改成功! len = " + len);
}else{
System.out.println("修改失败!");
}
}catch(Exception e){
e.printStackTrace();
}
}