java.util.Date date = new java.util.Date();
java.sql.Date today = new java.sql.Date(date.getTime()); //2012-03-23
java.sql.Time time = new java.sql.Time(date.getTime()); //02:32:46
PreparedStatement pst = null;
String queryString = "INSERT INTO PR_VISITOR(PRISONER_ID,VISITOR_NAME,FATHER_NAME,DOV,IN_TIME) VALUES (?,?,?,?,?)";
pst = connect.prepareStatement(queryString);
pst.setString(1, pr_id);
pst.setString(2, visit);
pst.setString(3, father);
pst.setDate(4, today);
pst.setTime(5, time);
int officerQuery = pst.executeUpdate();
if (officerQuery == 1) {
response.sendRedirect("/FYP3.4/prisonAdmin/visitor_out.jsp");
JOptionPane.showMessageDialog(null, "Visitor information registered !!", "Visitor Information", JOptionPane.INFORMATION_MESSAGE);
} else {
JOptionPane.showMessageDialog(null, "Unable to Add information !!", "Visitor Information", JOptionPane.ERROR_MESSAGE);
}
通过使用上面的代码,我尝试将当前日期和时间插入到具有单独列的表中。当我执行上述查询时,它也会在时间 IN_TIME
字段中插入今天的日期。
编辑
IN_TIME
和 DOV
的 DATATYPE 为 DATE
。
需要帮助..!!
最佳答案
由于 DOV 和 IN_TIME 是日期
,因此您无需分隔日期和时间。 Oracle 中的date
类型保存日期和时间。我建议您将表格更改为只有一个日期列。
要插入当前时间,您可以使用 Oracle 的 sysdate
函数:
INSERT INTO PR_VISITOR(PRISONER_ID,VISITOR_NAME,FATHER_NAME,DATETIME_COLUMN) VALUES (?,?,?,?,SYSDATE)
要格式化日期值的输出,您可以使用 Java 中的 SimpleDateFormat
类或 Oracle 中的 to_char
。
关于java - 将当前时间插入表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9830493/