向數據庫中插入日期時間datetime類型數據,數據庫中只有日期沒有時分秒


  •   java.util.Date是不能直接插入數據庫中的,雖然它包含了日期和時分秒。

  •   java.sql.Date可以直接插入數據庫,但是它只有日期而沒有時間;

  •   java.sql.Time可以直接插入數據庫,但是它只有時間,沒有日期

  • Java.util.Date需要轉換為Java.sql.Date,常規的方式轉換過來只可以得到年月日,如若要取得時分秒,可以用Java.sql.Date類的子類Timestamp

 

使用java.sql.Timestamp來向數據庫插入。在程序中,我們常常是使用的java.util.Date,所以就要將java.util.Date轉化為java.sql.Timestamp


 

代碼如下:

import java.sql.Timestamp;

// 添加聯系人

public void insertStu(Stu stu) {

Connection conn = null;

PreparedStatement stmt = null;

try {

// 獲取連接

conn = MyJdbcUtil.getConnection();

// 准備SQL語句

String sql = "INSERT INTO stu(xm,xb,csrq,fs,gmt_create,status) VALUES(?,?,?,?,?,?)";

// 預編譯

stmt = conn.prepareStatement(sql);

// 設置參數

stmt.setString(1, stu.getXm());

stmt.setString(2, stu.getXb());

stmt.setDate(3,new java.sql.Date(stu.getCsrq().getTime()));

stmt.setBigDecimal(4, stu.getFs());

stmt.setTimestamp(5,new Timestamp(stu.getGmt_create().getTime()));

stmt.setString(6, stu.getStatus());

// 執行

stmt.executeUpdate();

 

} catch (SQLException e) {

e.printStackTrace();

throw new RuntimeException(e);

} finally {

MyJdbcUtil.close(conn, stmt);

}

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM