gpt4 book ai didi

java - 无法将 java.sql.Date 插入数据库中的 "Date"字段

转载 作者:行者123 更新时间:2023-11-30 06:32:15 25 4
gpt4 key购买 nike

我得到一个字符串值,例如“2012-01-20”,并将其转换为 sql.Date 以将其插入数据库。

代码

java.util.Date DOB = new java.util.Date();
String datetext = txtDate.getText();

SimpleDateFormat sd = new SimpleDateFormat("yyyy-mm-dd");
DOB = sd.parse(datetext);
java.sql.Date sqlDate = new java.sql.Date(DOB.getTime());

String query = "ISERT INTO EMPLOYEE ('DOB')"
+ " VALUES ( ? ) ";

con = db.createConnection();
try{
ps = con.prepareStatement(query);
ps.setDate(1, sqlDate);
ps.executeQuery();
}catch(Exception ex){
System.err.print(ex);
}

当我运行这段代码时,出现异常“[Microsoft][ODBC SQL Server Driver]Optional feature not implemented”

我在这里做错了什么?请帮忙!

最佳答案

删除单引号 - ('DOB') 和 INSERT(拼写错误)

String query = "INSERT INTO EMPLOYEE (DOB) VALUES (?)";

您可以使用 java.sql.Date.valueOf("2012-01-20") 方法将字符串转换为 sql 日期。

使用 executeUpdate() 方法代替 executeQuery()。

String query = "INSERT INTO EMPLOYEE (DOB) VALUES (?)";

con = db.createConnection();
try{
ps = con.prepareStatement(query);
ps.setDate(1, java.sql.Date.valueOf("2012-01-20"));
//Or use
// ps.setTimestamp(1, new Timestamp(DOB.getTime()));
ps.executeUpdate();
}catch(Exception ex){
System.err.print(ex);
}

关于java - 无法将 java.sql.Date 插入数据库中的 "Date"字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8936722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com