将年月日时分秒都保存进数据库

来源:互联网 发布:mac谷歌浏览器安插件 编辑:程序博客网 时间:2024/05/21 15:43
这里使用的是MySQL数据库, 在向表中datetime 字段设值时,  一般使用preparedStatement.setDate(). 

这样只能存入日期,而没有时间.  下面两个方法可以将年月日时分秒都保存进数据库. 

1.使用preparedStatement.setTimestamp() 

Java代码 复制代码
  1. //将当前日期时间存入数据库       
  2. pstmt.setTimestamp(4new Timestamp(System.currentTimeMillis()));       
  3. pstmt.setTimestamp(4new Timestamp((new java.util.Date()).getTime()));     
[java] view plaincopy
  1. //将当前日期时间存入数据库      
  2. pstmt.setTimestamp(4, <span class="hilite2"><span style="background-color: #55ff55;">new</span></span> Timestamp(System.currentTimeMillis()));      
  3. pstmt.setTimestamp(4, <span class="hilite2"><span style="background-color: #55ff55;">new</span></span> Timestamp((<span class="hilite2"><span style="background-color: #55ff55;">new</span></span> <span class="hilite1"><span style="background-color: #ffff00;">java</span></span>.util.<span class="undefined">Date</span>()).getTime()));     


2.使用MySQL的时间函数 

MySQL内置了一系列时间函数:  

CURDATE()  
CURRENT_DATE() 
CURTIME() 
CURRENT_TIME() 
CURRENT_TIMESTAMP() 
NOW() 

可以直接在SQL语句中,使用这些函数, 替代本应由java注入的Date 

Java代码 复制代码
  1. //将当前日期时间存入表t的create_date字段       
  2. insert into t (... , create_date) value (... ,?, CURRENT_TIMESTAMP());       
  3. insert into t (... , create_date) value (... ,?, NOW());     
[java] view plaincopy
  1. //将当前日期时间存入表t的create_date字段      
  2. insert into t (... , create_date) value (... ,?, CURRENT_TIMESTAMP());      
  3. insert into t (... , create_date) value (... ,?, NOW());    
阅读全文
0 0
原创粉丝点击