PreparedStatement

/**
 * PreparedStatement:
 *  更新操作:public int executeUpdate()
 *  查询操作:public Result executeQuery()
 *  填充数据:public void setXxx(int index,值)//注意index是从1开始
 *  
 *  注意:在使用PreparedStatement操作Date数据时,使用的是java.sql.Date类,
 *  但在实际的程序之中描述的是java.util.Date类型,在java.util.Date中有三个子类
 *  Date(日期)、Time(时间)、Timestamp(日期时间),
 *    java.sql.Date类:public Date(long date)
 *    java.sql.Time类:public Time(long time)
 *    java.sql.Timestamp类:public Timestamp(long time)
 *  
 *  在java.util.Date中有一个方法可以将Date变为long
 *  getTime():返回long类型数据
 *  
 *  总结:先将java.util.Date的数据转换为long类型数据,再作为参数传入到java.sql.Date的构造方法里,即可实现转换。
 *     java.util.Date-->java.sql.Date
 *     new java.sql.Date (new Date().getTime()))
 *  
 */
 
public class Test011 {
   public static void main(String[] args) throws Exception {     
       //注册驱动
       Class.forName(Const.DBDRIVER);
       //获取连接对象
       Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott","tiger");
       String sql=" insert into member(mid,name,age,birthday,note) values(myseq.nextval,?,?,?,?)";
       //创建操作数据库预编译对象
       PreparedStatement ps = conn.prepareStatement(sql);
       //填充数据,注意编号从1开始
       ps.setString(1, "tom");
       ps.setInt(2, 100);
       ps.setDate(3, new java.sql.Date(new Date().getTime()));
       ps.setString(4, "哈哈");
       int i = ps.executeUpdate();
       System.out.println(i);
  }
}

 


posted @ 2017-09-07 10:54  scwyfy  阅读(166)  评论(0编辑  收藏  举报