使用java将日期时间插入数据库

4 java mysql datetime prepared-statement

我想使用Java和预准备语句将日期时间插入到MySql数据库中:

Calendar cal = Calendar.getInstance();
PreparedStatement stmnt = db.PreparedStatement("INSERT INTO Run " +
                       "(Time) VALUE (?) ");
    stmnt.setDate(1, new java.sql.Date(cal.getTime()));
    stmnt.executeQuery();  
Run Code Online (Sandbox Code Playgroud)

注意:目前有一个错误 - 在这里找不到符号(java.sql.Date)第4行

db是一种包装类的实例,它从java.sql中公开我需要的东西 - 它只是从我的连接对象获取一个预准备语句.

时间(列)是我的数据库中的日期时间,我只能看到setDate和setTime方法,但我想存储两者 - 我的代码也无法正常工作;-)

如果有人能给我一些关于使用准备好的语句将组合日期时间(当前时间将是一个很大的帮助,因为这是我的第一个目标)添加到MySql DB中的一些指示,我将非常感激.

谢谢

Goi*_*niu 5

java.sql.Date的构造函数需要很长的时间(自1970年以来的毫秒)java.sql.Date 要从java.uitl.Calendar获取毫秒,您可以使用cal.getTimeInMillis()

你的代码是:

Calendar cal = Calendar.getInstance();
PreparedStatement stmnt = db.PreparedStatement("INSERT INTO Run " + "(Time) VALUE (?) ");
stmnt.setDate(1, new java.sql.Date(cal.getTimeInMillis()));
stmnt.executeQuery();
Run Code Online (Sandbox Code Playgroud)