我正在使用 swingxLabs 的组件 jXDatePicker1 以图形格式选择日期,并尝试将其存储在 derby 制作的数据库中。我的代码是这样的:
Date date=jXDatePicker1.getDate();
PreparedStatement statement = connect
.prepareStatement("INSERT INTO BILLING (DATE, DHRNUMBER) VALUES('"+date+"', "+dhrNumber+")");
我收到的错误是:
java.sql.SQLDataException: The syntax of the string representation of a datetime value is incorrect.
我做得对吗?或者可以有其他方法来解决这个问题。
谢谢
最佳答案
Derby 的内置 DATE 数据类型支持简短的字符串格式列表:http://db.apache.org/derby/docs/10.9/ref/rrefsqlj18730.html
由于您使用的是PreparedStatement,所以最好的办法就是准备语句
INSERT INTO BILLING (DATE, DHRNUMBER) VALUES(?,?)
然后使用 setDate() 和 setInt() 方法替换您的实际值: http://docs.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html
关于java - 在数据库中存储 jXDatePicker1 日期值时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15841616/