java—将数据检索到与用户从jdatechooser输入的日期相符的jtable中

sdnqo3pr  于 2021-06-24  发布在  Mysql
关注(0)|答案(0)|浏览(251)

我正在使用 Netbeans 8.0.2用于gui创建和
MYSQL Query Browser 对于数据库。有一个 JInternalFrame 调用的窗体 LCI 在我的java项目和该接口中,我有一个名为 DATE 和一个 JButton 打电话 Load_To_Table 。我需要从名为 LCI 我已经创建并与项目相连接。
首先,用户必须从中选择一个日期 DATE 然后单击 Load_To_Table . 然后应用程序应该检查是否有一个与 DATE 如果是这样,它应该将该记录检索到 JTable 打电话 tb1 .
下面是我的代码。

  1. private void Load_To_TableActionPerformed(java.awt.event.ActionEvent evt) {
  2. try{
  3. Statement s = DB.getConnection().createStatement();
  4. DefaultTableModel dtm=(DefaultTableModel)tb1.getModel();
  5. Vector v=new Vector();
  6. DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  7. ResultSet rs,rs1,rs2,rs3,rs4,rs5;
  8. rs1=j.getData("select E_ID from User where E_ID='"+user+"'");
  9. if(rs1.next()==true)
  10. {
  11. rs=j.getData("select * from LCI where L_DATE= '"+dateFormat.format(DATE.getDate())+"'");
  12. if(rs.next()== true)
  13. {
  14. v.add(rs.getString("L_ID"));
  15. v.add(rs.getString("HEADING"));
  16. v.add(rs.getString("INSTITUTE"));
  17. v.add(rs.getString("L_DATE"));
  18. JOptionPane.showMessageDialog(this, "Successful");
  19. }
  20. else
  21. {
  22. System.out.println(rs.getString("L_DATE"));
  23. JOptionPane.showMessageDialog(this, "There is no data related to the date you entered.Please try another date.");
  24. }
  25. }
  26. else{
  27. JOptionPane.showMessageDialog(this, "Failed to connect with DB. Please try again");
  28. }
  29. }
  30. catch(Exception ex)
  31. {
  32. ex.printStackTrace();
  33. }
  34. // TODO add your handling code here:
  35. }

但它给出了一个错误,表示它是非法操作或空操作 result set .
下面是堆栈跟踪。

  1. java.sql.SQLException: Illegal operation on empty result set.
  2. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
  3. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988)
  4. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974)
  5. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919)
  6. at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:855)
  7. at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5773)
  8. at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5693)
  9. at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5733)
  10. at Viewer.LCI.Load_To_TableActionPerformed(LCI.java:668)
  11. at Viewer.LCI.access$800(LCI.java:25)
  12. at Viewer.LCI$9.actionPerformed(LCI.java:342)
  13. at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
  14. at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
  15. at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  16. at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  17. at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  18. at java.awt.Component.processMouseEvent(Component.java:6516)
  19. at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
  20. at java.awt.Component.processEvent(Component.java:6281)
  21. at java.awt.Container.processEvent(Container.java:2229)
  22. at java.awt.Component.dispatchEventImpl(Component.java:4872)
  23. at java.awt.Container.dispatchEventImpl(Container.java:2287)
  24. at java.awt.Component.dispatchEvent(Component.java:4698)
  25. at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
  26. at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
  27. at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
  28. at java.awt.Container.dispatchEventImpl(Container.java:2273)
  29. at java.awt.Window.dispatchEventImpl(Window.java:2719)
  30. at java.awt.Component.dispatchEvent(Component.java:4698)
  31. at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:747)
  32. at java.awt.EventQueue.access$300(EventQueue.java:103)
  33. at java.awt.EventQueue$3.run(EventQueue.java:706)
  34. at java.awt.EventQueue$3.run(EventQueue.java:704)
  35. at java.security.AccessController.doPrivileged(Native Method)
  36. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
  37. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
  38. at java.awt.EventQueue$4.run(EventQueue.java:720)
  39. at java.awt.EventQueue$4.run(EventQueue.java:718)
  40. at java.security.AccessController.doPrivileged(Native Method)
  41. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
  42. at java.awt.EventQueue.dispatchEvent(EventQueue.java:717)
  43. at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
  44. at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
  45. at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
  46. at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
  47. at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
  48. at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
  49. BUILD SUCCESSFUL (total time: 8 minutes 7 seconds)

谁能告诉我应该如何修改代码来完成我在本说明第二段中所描述的(检索与用户输入的日期相符的数据)。提前谢谢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题