Java 日期至 sql 日期
Java date to sql date
如何将 java 的特定日期存储到我的数据库中? (不仅是今天的日期,还有一些用户想要指定的日期)
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
Date date = dateFormat.parse(tf.getText());
String d = dateFormat.format(date);
String str = "insert into tableName(tDate) values (?)";
con = mysqlConnection.dbConnector();
prs = con.prepareStatement(str);
prs.setDate(1, // dont know what to put here);
int rsUpdate = prs.executeUpdate();
con.close();
prs.close();
} catch(ParseException exx) {
System.err.println(exx);
使用
prs.setDate( 1, new java.sql.Date( date.getTime() ) );
类型java.sql.Date
和java.sql.Timestamp
应该分别用于设置日期和时间戳字段。阅读他们的文档以了解它们之间以及它们与 java.util.Date
.
之间的区别
您通常会从用户那里得到一个 java 日期 (java.util.Date
)。您使用 getTime()
将其转换为自纪元以来的毫秒数,然后如我所示转换回 java.sql.Date
或 java.sql.Timestamp
。
使用这个它可以帮助
static java.sql.Timestamp getSqlDate(Date date) {
java.util.Date javaDate = date;
long javaTime = javaDate.getTime();
java.sql.Timestamp sqlTimestamp = new java.sql.Timestamp(javaTime);
return sqlTimestamp;
}
如何将 java 的特定日期存储到我的数据库中? (不仅是今天的日期,还有一些用户想要指定的日期)
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
Date date = dateFormat.parse(tf.getText());
String d = dateFormat.format(date);
String str = "insert into tableName(tDate) values (?)";
con = mysqlConnection.dbConnector();
prs = con.prepareStatement(str);
prs.setDate(1, // dont know what to put here);
int rsUpdate = prs.executeUpdate();
con.close();
prs.close();
} catch(ParseException exx) {
System.err.println(exx);
使用
prs.setDate( 1, new java.sql.Date( date.getTime() ) );
类型java.sql.Date
和java.sql.Timestamp
应该分别用于设置日期和时间戳字段。阅读他们的文档以了解它们之间以及它们与 java.util.Date
.
您通常会从用户那里得到一个 java 日期 (java.util.Date
)。您使用 getTime()
将其转换为自纪元以来的毫秒数,然后如我所示转换回 java.sql.Date
或 java.sql.Timestamp
。
使用这个它可以帮助
static java.sql.Timestamp getSqlDate(Date date) {
java.util.Date javaDate = date;
long javaTime = javaDate.getTime();
java.sql.Timestamp sqlTimestamp = new java.sql.Timestamp(javaTime);
return sqlTimestamp;
}