我想向Access插入日期时间值,但是我收到此错误:
net.ucanaccess.jdbc.ucanaccesssqlException: UCAExc:::3.0.4 data exception: invalid datetime format
这是代码:
private void txtsubmitactionPerformed(java.awt.event.ActionEvent evt) {
SimpleDateFormat A = new SimpleDateFormat("dd/MM/yyyy");
Peminjaman P= new Peminjaman(setIDTrans(),txtid.getText(),A.format(txttglpinjam.getDate()),A.format(txttglkembali.getDate()),txtplat.getText(),txtnama.getText(),txtdriver.getText());
c.InsertPeminjamanD(P);
解决方法:
错误消息表明您的InsertPeminjamanD方法最终尝试执行类似的操作
INSERT INTO Table1 (DateTimeField) VALUES ('31/05/2016')
这不会有两个原因:
> ucanaccess期望日期文字用哈希标记(#)括起来
> ucanaccess通常希望xx / yy / zzzz日期文字为MM / dd / yyyy,而不是dd / MM / yyyy.
INSERT INTO Table1 (DateTimeField) VALUES (#05/31/2016#)
…虽然最好使用PreparedStatement并将其传递给正确的日期值:
String sql = "INSERT INTO Table1 (DateTimeField) VALUES (?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setDate(1, java.sql.Date.valueOf("2016-05-31"));
ps.executeUpdate();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。