8-7章节里面的问题
stmt.setInt(1,id);这句话为什么要加进去,是什么意思
stmt.setInt(1,id);这句话为什么要加进去,是什么意思
2016-09-12
String sql = "select * from items where id = ?"; stmt = conn.prepareStatement(sql); stmt.setInt(1, id);//数字表示第几个占位符,即sql中的 ? rs = stmt.executeQuery();
很显然这里只有一个 ?
把id的值传给传给sql中的第1个 ?
然后执行sql语句
Connection conn=DBUtil.getConnection(); //使用占位符?代替参数 String sql="insert into imooc_goddess(user_name,sex,age,birthday,email,mobile," + "create_user,create_date,update_user,update_date,isdel)" + "values(?,?,?,?,?,?,?,current_date(),?,current_date(),?)"; PreparedStatement ptmt=conn.prepareStatement(sql);//预编译sql语句,并不执行 ptmt.setString(1, g.getUser_name());//数字表示第几个占位符,即 ? ptmt.setInt(2, g.getSex()); ptmt.setInt(3, g.getAge()); ptmt.setDate(4, new Date(g.getBirthday().getTime())); ptmt.setString(5, g.getEmail()); ptmt.setString(6, g.getMobile()); ptmt.setString(7, g.getCreate_user()); ptmt.setString(8, g.getUpdate_user()); ptmt.setInt(9, g.getIsdel()); ptmt.execute();//该方法被调用时才会执行上面的sql语句
这里就不止一个 ? 了
把取得的age值传给sql中的第3个 ?
等等
然后执行sql语句
举报