2015-10-20 82 views
-2

我已經創建了jtable,但它沒有顯示最後一列名稱我不知道我在代碼數據庫中做了什麼錯誤有4列id,name,fathername和phone number但jtable只顯示3列。JTable缺少最後一列名稱

public void load() { 
    try { 
     DBO db = new DBO(); 
     con = db.connect(); 
     String sql = "Select * from personinfo"; 
     PreparedStatement pst = con.prepareStatement(sql); 
     ResultSet rs = pst.executeQuery(); 
     ResultSetMetaData rsmd = rs.getMetaData(); 
     int count = rsmd.getColumnCount(); 
     DefaultTableModel tb = new DefaultTableModel(); 
     Vector col = new Vector(); 
     for (int i = 1; i < count; i++) { 
      col.addElement(rsmd.getColumnName(i)); 
     } 
     tb.setColumnIdentifiers(col); 
     while (rs.next()) { 
      Vector rows = new Vector(); 
      for (int j = 1; j < rsmd.getColumnCount(); j++) { 
       rows.addElement(rs.getString(j)); 
      }     
      tb.addRow(rows); 
      PersonTable.setModel(tb); 
     } 
    } catch (Exception ex) { 
     JOptionPane.showMessageDialog(null, ex); 
    } 

} 
+0

我得到的溶液中添加1計數詮釋計數= rsmd.getColumcount(); int colcount = count +1; for(int i = 1; i

回答

0

我想創建一個準備好的語句時,你應該使用

pst.setString(1, "%"+name.getText()+"%");