向mysql中插⼊Date类型的数据
先看数据库表的定义
date字段为sql.date类型。我要向其中插⼊指定的⽇期和当前⽇期。
⼀、插⼊当前⽇期
思路:先获取当前系统,在将当前系统时间转换成sql类型的时间,然后插⼊数据库。代码如下
public static void insert_now() throws ClassNotFoundException, SQLException{
java.util.Date utilDate = new Date();                                    //获取java.util.Date对象---也即当前时间
java.sql.Date sqlDate = new java.sql.Time());    //将java.util.Date类型转换成java.sal.Date类型
Connection conn = Conn();                        //获取数据库连接
String sql = "insert into testdate(date) values (?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setDate(1, sqlDate);                                        //sql类型的数据插⼊数据库
conn.close();
}
数据库刷新后如下:
⼆、插⼊指定⽇期的数据
将"2012-12-21"这个字符串插⼊数据库。思路:使⽤java.sql.Date.valueOf(String str)⽅法将字符串转换成sql类型的Date,然后插⼊数据库中
public static void string_insert_sql() throws ClassNotFoundException, SQLException{
String str = "2012-12-21";
java.sql.Date sqlDate = java.sql.Date.valueOf(str);        //将字符串转换成sql.Date类型
Connection conn = Conn();                    //连接数据库
String sql = "insert into testdate(date) values (?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setDate(1, sqlDate);                                    //sql类型的额数据插⼊数据库
conn.close();
}
数据库刷新后如下:
三、从数据库中读Date类型的数据
public static void sql_to_string() throws ClassNotFoundException, SQLException{
Date date = null;
Connection conn = Conn();                    //获取数据库连接
String sql = "select * from testdate where id = 4";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
()){
date = rs.getDate(2);
}
conn.close();
System.out.println(date);                                //可以将date转换成String()
}java valueof
附上⼀⽚看到的博⽂

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。