我被困在up_address
行。我正在研究一个用于更新数据库中的值的项目,我被困在textarea中设置文本。
try{
int row = user_table.getSelectedRow();
String Table_clicked =(String)(user_table.getModel().getValueAt(row, 0));
String sql="select * from userl where id ='"+Table_clicked+"' ";
Statement st=con.createStatement();
rs=st.executeQuery(sql);
if(rs.next()){
String up_nam= rs.getString("Name");
up_name.setText(up_nam);
String up_num= rs.getString("Number");
up_number.setText(up_num);
String up_cit= rs.getString("City");
up_city.setText(up_cit);
String up_addre= rs.getString("Address");
up_address.setText(up_addre);
String up_mod= rs.getString("Mode");
up_mode.addItem(up_mod);
String up_typ= rs.getString("Type");
up_type.addItem(up_typ);
}
}
catch (Exception e) {
}
答案 0 :(得分:0)
答案 1 :(得分:0)
它没有抛出任何错误,也没有在textarea中设置任何值
你怎么知道它没有抛出任何错误?
您正在使用:
catch (Exception e) {}
你永远不应该这样做,因为你永远不会知道你是否有SQL问题。
你至少应该使用:
catch (Exception e) { System.out.println(e); }
此外,使用多个文本区域似乎不是一个合适的解决方案。我建议你应该使用JTable。阅读How to Use Tables上Swing教程中的部分以获取基本信息
然后,您还可以查看Table From Database中的Table From Database Example
,了解显示JTable中数据库数据的简单代码。
答案 2 :(得分:0)
你正在使用up_address.setText(up_addre);
循环,这意味着你的JTextField对象up_address的值将被覆盖,如果你获得更多然后在rs(ResultSet对象)中的一行。
你必须确保你的表中的字段" User1"必须是" 地址"
您也可以尝试下面的代码
try { // Put Your Code Here....
}catch (Exception e){System.out.println(e.getMessage());}
如果有任何错误发生,它会帮助你......