我的代码有很多重复,所以我只是简写那些部分。我不知道我的代码有什么问题,因为没有报告错误。没有任何反应。
我正在使用Netbeans GUI,jdbc和MS SQL。我的联系很扎实 preparedstatment = pst 连接=连接 等
我的目标是将文本和列保存到SQL中的单个结果集表中。
代码由action中的private void激活:
private void INSERT1saveCustomers() {
int index=1;
int count = jTable1.getRowCount();
for(int i=0;i<count;i++){
SET0 = new Object[1][count];
SET0[0][i] = txtTestiNIMI1.getText(); }
对于名为SET的所有对象重复此操作。接下来以类似的方式定义SAVE
SAVE = new Object[1][count];
SAVE[0][i] = jTable1.getModel().getValueAt(i,0);
然后我将进入我的两个SQL查询
String sqla1 = "INSERT INTO MIT(MTY_KOD,MTY_TYY,MTY_ALU,MTY_PARA1,MTY_PARA2,MTY_TOL,MTY_KAN) values(?,?,?,?,?,?,?)";
try{
pst = conn.prepareStatement(sqla1);
pst.setObject(1, SET0);
pst.setObject(2, SET2);
pst.setObject(3, SET1);
pst.setObject(4, SAVE);
pst.setObject(5, SAVE3);
pst.setObject(6, SAVE5);
pst.setObject(7, SET3);
rs = pst.executeQuery();
}
catch(Exception e){}
String sqlb1 = "INSERT INTO TEST(TET_KOD,TET_LUK,TET_ARE,TET_YRE,TET_PVF,TET_TEMP,TET_HUM,TET_DATE, TET_VIR, TET_ERR) values(?,?,?,?,?,?,?,?,?,?)";
try{
pst = conn.prepareStatement(sqlb1);
pst.setObject(1, SET0);
pst.setObject(2, SAVE4);
pst.setObject(3, SAVE6);
pst.setObject(4, SAVE7);
pst.setObject(5, SET4);
pst.setObject(6, SET5);
pst.setObject(7, SET6);
pst.setObject(8, SET2);
pst.setObject(9, SAVE8);
pst.setObject(10, SET7);
rs = pst.executeQuery();
}
catch(Exception e){}
}
没有报告错误......是的,我知道Exception e目前存在,但并非总是如此:P
信息永远不会保存。我也尝试过使用pst.setString(x,SET.toString())同样的问题,所以我不知道从哪里来解决这个问题。任何帮助将不胜感激...谢谢!
答案 0 :(得分:1)
要插入,更新或删除数据,您必须使用statement.executeUpdate()
。
请:不要吞下例外。这就是让你觉得没有任何反应的原因。发生了一些事情:抛出异常,但你选择忽略它:
catch (Exception e){}
如果您不知道如何处理此方法中的异常,则使方法throw为:
public void foo() throws SQLException
或者至少,抓住它但重新抛出它包装成运行时异常:
catch (SQLException e) {
throw new RuntimeException(e);
}