将 JDateChooser 中的日期插入 Oracle DB
Posted
技术标签:
【中文标题】将 JDateChooser 中的日期插入 Oracle DB【英文标题】:Insert date from JDateChooser into Oracle DB 【发布时间】:2016-07-13 23:07:45 【问题描述】:我一直在尝试使用 JDateChooser 将日期插入到我的 Oracle 数据库中,但我不断收到此错误:
SQL 错误:ORA-01861:文字与格式字符串不匹配。
这是我的代码。
private void addActionPerformed(java.awt.event.ActionEvent evt)
// TODO add your handling code here:
try
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String d = sdf.format(tdate.getDate());
System.out.println(d);
String sql ="INSERT INTO TRACK(TRACKID,TRACKNAME,TRACKDESC,TRACKDATE)VALUES (?,?,?,?)";
ps=conn.prepareStatement(sql);
ps.setString(1,tid.getText());
ps.setString(2,tname.getText());
ps.setString(3,td.getText());
ps.setString(4,d);
ps.execute();
JOptionPane.showMessageDialog(null, "Added");
catch(Exception e)
JOptionPane.showMessageDialog(null,e);
【问题讨论】:
【参考方案1】:使用setDate
而不是setString
作为第四个参数。
ps.setDate(4, new java.sql.Date(tdate.getDate().getTime());
有关设置日期的更多信息 Using setDate in PreparedStatement
【讨论】:
非常感谢!我用 ps.setDate(4, new java.sql.Date(tdate.getDate().getTime())); 我不知道 tDate 类。我已经更新了答案。请善待接受它。以上是关于将 JDateChooser 中的日期插入 Oracle DB的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jdatechooser 从 mysql 数据库中保存和检索空日期
ORA-01840: 使用 Select 的 Oracle 插入中的日期格式输入值不够长