2015-06-25 33 views
0

enter image description here由一個JFrame形式更新MySQL數據庫而刷新殲表JFrame窗體

我以上形式開發上,以更新MySQL數據庫表「employeeinfo」。表格還顯示了一個J表,其中包含數據庫表'employeeinfo'中的當前數據。

我編碼選擇J表格行,並獲得表格中的相關文本字段。

但是,我在與通過編輯挑選的員工更新MySQL數據庫的麻煩.... **當我編輯的文本字段和命中更新,數據庫或JTable沒有更新**

數據庫不更新和J表不刷新..(可能是因爲數據庫表未更新)

更新按鈕ActionPerformed;

private void update_btnActionPerformed(java.awt.event.ActionEvent evt) {           

    try{ 
     String val1 =txt_id.getText(); 
     String val2 =txt_name.getText(); 
     String val3 =txt_sname.getText(); 
     String val4 =((JTextField)bday_chooser.getDateEditor().getUiComponent()).getText(); 
     String val5 =((JTextField)wday_chooser.getDateEditor().getUiComponent()).getText(); 

     String sql = "update employeeinfo set EmployeeID='"+val1+"',Name='"+val2+"',Surname='"+val3+"', BirthDate='"+val4+"',WorkStartedDate='"+val5+"' where EmployeeID='"+val1+"' "; 

     pst=conn.prepareStatement(sql); 
     pst.execute(); 

     JOptionPane.showMessageDialog(null, "User Data Updated..."); 

    }catch(Exception e){ 
     JOptionPane.showMessageDialog(null, e); 
    } 
    updateTable(); 
}           

updateTable方法;

private void updateTable(){ 

    try { 
     String sql = "SELECT * FROM employeeinfo"; 
     pst=conn.prepareStatement(sql); 
     rs=pst.executeQuery(); 
     table_empinfo.setModel(DbUtils.resultSetToTableModel(rs)); 
    } catch (Exception ex) { 
     JOptionPane.showMessageDialog(null, "Error : "+ex); 
    } 

} 

我改變了編碼如下;然後它的工作; 定義的變量:String tableClick = (table_empinfo.getModel().getValueAt(row,0).toString());String sql = "update employeeinfo set EmployeeID='"+val1+"',Name='"+val2+"',Surname='"+val3+"', BirthDate='"+val4+"',WorkStartedDate='"+val5+"' where EmployeeID='"+tableClick+"' ";

+0

爲了更好地幫助越早,張貼[MCVE](http://stackoverflow.com/help/mcve)(最小完備可驗證實施例)或[SSCCE](http://www.sscce.org/ )(簡短,獨立,正確的例子)。硬編碼一些數據來替換數據庫。 –

回答

2
String tableClick = (table_empinfo.getModel().getValueAt(row,0).toString()); 

上述變量添加和更改代碼,如下所示;

String sql = "update employeeinfo set EmployeeID='"+val1+"',Name='"+val2+"',Surname='"+val3+"', BirthDate='"+val4+"',WorkStartedDate='"+val5+"' where EmployeeID='"+tableClick+"' ";