2013-04-26 87 views
0

即时贴在我的项目中,其中我需要生成每日报告。 我需要显示一整天呼叫中涉及的所有故障号。在单个JTable单元格中显示ResultSet中的多个值

继承人什么我现在有

| Number of calls from ISG | 2 | | 
| Fault Numbers   |  | x | 

这里x应是那些2个故障代码,我需要从我的MySQL数据库显示所有的故障代码。因为我需要在第三列的ISG IN A SINGLE LINE中显示2个故障编号,用逗号分隔。我如何获取这2个结果,因为在我第一次尝试时,只有第一行被检索到。

对于调用的数量,这里是我的方法,其中q是查询。

public void dailyResult(String q, int x, int y){ 

    try{ 
     Statement stmtDr = (Statement)daily.createStatement(); 
     ResultSet rs = stmtDr.executeQuery(q); 
    if(rs.next()){ 
     reportTable1.setValueAt(rs.getInt(1), x, y); 
    } 
    }catch(Exception e){ 
        JOptionPane.showMessageDialog(rootPane, "Error 106\n\nAn error has occured with the resultset procedure method. Please try again later.", "Error!", JOptionPane.ERROR_MESSAGE); 
    } 
} 

关于在单个jtable单元格中显示这些数字,我不知道如何做这样的任务。我是一个mySQL查询中的初学者,对于ResultSet类的工作方式也很困惑,任何帮助都会很棒,欢呼!

回答

3

您不应该与表格进行交互,而应该与表格的模型进行交互。

如果您使用的是DefaulTableModel,则可以利用addRow方法,该方法允许您向表中添加新行(通过模型),否则您需要提供TablModel有适当的方法来让你更新底层数据结构

采取在How to use tables密切关注更多细节

ResultSet类主要有“当前”行的概念,它允许你从结果列中提取单个值(按原始查询指定)。这些可以通过命令或名称提取,这取决于您的需求

+0

肯定的事情,即时消息将花费一些时间与这个话题,然后通知您asap兄弟。但我相信即时通讯与这一个正确的轨道,因为你提到了桌面模型(这个话题在我的脸上爆炸了一整天)并给了我链接。所以,是的,答案。干杯! – MrZooYork 2013-04-26 09:34:43

+0

只是一个更新,我发现这个rs2xml.jar工具非常有用,并将我从痛苦中拯救出来。 http://www.youtube.com/watch?v=hg1S3QHFNrE – MrZooYork 2013-05-07 06:56:58

相关问题