gpt4 book ai didi

java - 尝试将新数据添加到我的表之一时出错

转载 作者:行者123 更新时间:2023-11-29 22:35:38 25 4
gpt4 key购买 nike

正在开发一个项目,我必须将新数据添加到不同的表中(我是新手)。我正在使用连接到 mysql 数据库的 Netbeans。数据库工作正常,当我直接执行查询时,它们也可以工作。但是当我尝试通过 javacode 用新数据更新表时,它失败了。

代码:

ConnectionClass db = new ConnectionClass();
try {
db.ConnectToDb();
} catch (SQLException ex) {
Logger.getLogger(AddUser.class.getName()).log(Level.SEVERE, null, ex);
}

String sql = "insert into users values (3, 'Nicklas', 'niklas@alskart.se', 'nisun', 'heej', '1')";

/* String laggTill = "insert into agent values ("+idb.getAutoIncrement("agent", "aid")+
", '"+tfNamn.getText()+"', '"+tfNr.getText()+"', '"+tfMail.getText()+"')";

*/

try {
db.myStmt.executeUpdate(sql);
} catch (SQLException ex) {
Logger.getLogger(AddUser.class.getName()).log(Level.SEVERE, null, ex);
}

}

生成异常:

apr 10, 2015 1:17:47 EM Project.AddUser btn_saveNewUserActionPerformed
ALLVARLIG: null
java.sql.SQLException: No operations allowed after statement closed.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:937)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:872)
at com.mysql.jdbc.StatementImpl.checkClosed(StatementImpl.java:445)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1554)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1549)
at Project.AddUser.btn_saveNewUserActionPerformed(AddUser.java:159)

最佳答案

嗨,看到你的堆栈跟踪是这样说的java.sql.SQLException:语句关闭后不允许执行任何操作。意味着Statement对象不存在。你可以通过以下方式做到这一点:

Statement myStmt;

try {
myStmt = db.createStatement();
myStmt.executeUpdate(sql);
} catch (SQLException ex) {
Logger.getLogger(AddUser.class.getName()).log(Level.SEVERE, null, ex);
}

我假设引用变量db是Connection类型。

关于java - 尝试将新数据添加到我的表之一时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29560108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com