java - 需要方向 : . setObject 与 .setString 并将列信息从 GUI 保存到数据库

标签 java sql jdbc

我的代码有很多重复,所以我只会简写这些部分。我不知道我的代码有什么问题,因为没有报告错误..只是什么也没发生。

我正在使用 Netbeans GUI、jdbc 和 MS SQL。我的联系很牢固 准备好的语句= 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){}

    }

没有报告错误...是的,我知道当前存在异常 e,但情况并非总是如此:P

信息永远不会保存。我也尝试过使用 pst.setString(x,SET.toString()) 来解决同样的问题,所以我不知道从哪里解决这个问题。任何帮助将不胜感激...谢谢!

最佳答案

要插入、更新或删除数据,必须使用statement.executeUpdate()

请注意:不要接受异常。这就是让你认为什么都没有发生的原因。发生了一些事情:抛出异常,但您选择忽略它:

catch (Exception e){}

如果你不知道如何处理这个方法中的异常,那么让该方法抛出:

public void foo() throws SQLException

或者至少,捕获它但将其包装到运行时异常中重新抛出:

catch (SQLException e) {
    throw new RuntimeException(e);
}

关于java - 需要方向 : . setObject 与 .setString 并将列信息从 GUI 保存到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11327198/

相关文章:

java - 在 Java Faces 中重置属性

java - 使用 Field.set 设置 GameProfile(更改玩家的名字)

mysql UPDATE 语句 where Pricelist.import_date = ( SELECT max(pricelist.import_date) )

mysql - 无法在 Apache Drill 中创建新的 mysql 存储

java - 这个简单算法的计算复杂度

java - Criteria API 按嵌套聚合属性排序

mysql - 多次查询同一个表但在不同的列中mysql

sql - 在 SQL 中计算校验和

java - 如何将java数据库服务器嵌入到分布式jar中?

MySql 错误 1045 (00000) : Access denied - different MySQL versions