jdbcRowset的insertRow()没有更新JavaDB数据库

时间:2012-04-20 11:39:52

标签: java netbeans-7 javadb

我已经设置了一个我能够连接并读取的JAVADB。

但是,当我尝试使用jdbcRowset更新数据库时,没有任何反应,我没有错误。

我已附上代码段

try{
        try {
                Class.forName("org.apache.derby.jdbc.ClientDriver");
            } catch (ClassNotFoundException ex) {
                statusMessageLabel.setText("Server Class not found");
                Logger.getLogger(QuestioneerView.class.getName()).log(Level.SEVERE, null, ex);
                return false;
            }
        dbConn = DriverManager.getConnection(conne, connectionProps);
    }catch(SQLException sqle){
        statusMessageLabel.setText("Cannot Connect to Server");
        return false;
    }


try {

        jdbcRs = new JdbcRowSetImpl(dbConn);
        jdbcRs.setCommand("select * from APP.QNTABLE");
        jdbcRs.execute();
        jdbcRs.setAutoCommit(true);
        jdbcRs.beforeFirst();

        while (jdbcRs.next()){
                //String c = rs.getString("QNNAME");
                String c = jdbcRs.getString("QNNAME");
                listModel.addElement(c);
                //LastRecord = rs.getInt("QNID");
                LastRecord = jdbcRs.getInt("QNID");
        }
    } catch (SQLException ex) {
        Logger.getLogger(QuestioneerView.class.getName()).log(Level.SEVERE, null, ex);
        statusMessageLabel.setText("Database Query Error");
        return false;
    }

这部分代码工作正常,从数据库中检索所选数据。

但是下面的部分也可以正常执行而没有错误,但是当我在netbeans中检查数据库时,没有添加任何内容。

              myq.jdbcRs.moveToInsertRow();
              myq.jdbcRs.updateInt("QNID", x);
              myq.jdbcRs.updateString("QNNAME", Qus.Name());
              myq.jdbcRs.updateInt("NOQUS", Qus.QuestionCount());
              myq.jdbcRs.updateInt("QUANTITY", Qus.QQty());
              myq.jdbcRs.insertRow();

如果我重新启动应用程序并再次从DB加载值,我仍然会得到旧值。

0 个答案:

没有答案