sqlite java需要按照,什么是连接SQLite数据库的合适方法,执行准备好的语句并关闭与Java的连接?...

这是我目前的密码。我有或曾经有过几个问题:

数据库正忙-错误

SQL错误或缺少数据库

结果集已关闭

如果我想防止这两个错误,应该使用哪种代码结构?

我需要在试听区连接吗?我需要在哪里关闭连接?我需要在哪里关闭已准备好的报表?

到现在为止,我无法通过连接不同页面的信息来找到解决方案。

public boolean checkForUser(String username){

try(Connection con = this.connect();

PreparedStatement pstmt = createPreparedStatementRegistrate(conn, username);

ResultSet rs= pstmt.executeQuery();)

{

if (rueck.next()){

pstmt.close();

rs.close();

con.close();

//do some stuff

}

}catch(SQLException e){

e.printStackTrace();

}

return null;

}

private PreparedStatement createPreparedStatementRegistrate(Connection conn, String username) throws SQLException {

String sql = "SELECT * FROM users WHERE username = ?";

PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setString(1, username);

return pstmt;

}

private Connection connect() {

String url = "jdbc:sqlite:user.db";

Connection con = null;

try {

con = DriverManager.getConnection(url);

} catch (SQLException e) {

e.printStackTrace();

}

return con;

}

java.sql.SQLException: ResultSet closed

at org.sqlite.core.CoreResultSet.checkOpen(CoreResultSet.java:69)

at org.sqlite.jdbc3.JDBC3ResultSet.findColumn(JDBC3ResultSet.java:38)

at org.sqlite.jdbc3.JDBC3ResultSet.getString(JDBC3ResultSet.java:443)

at zugriffsverwaltung.Zugriffsverwaltung.loeschen(Zugriffsverwaltung.java:215)

at zugriffsverwaltung.Zugriffsverwaltung.(Zugriffsverwaltung.java:37)

at main.Server.(Server.java:29)

at main.Server.main(Server.java:46)

org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (Connection is closed)

at org.sqlite.core.DB.newSQLException(DB.java:909)

at org.sqlite.core.CoreStatement.internalClose(CoreStatement.java:115)

at org.sqlite.jdbc3.JDBC3Statement.close(JDBC3Statement.java:35)

at org.sqlite.jdbc4.JDBC4Statement.close(JDBC4Statement.java:27)

at zugriffsverwaltung.Zugriffsverwaltung.loeschen(Zugriffsverwaltung.java:238)

at zugriffsverwaltung.Zugriffsverwaltung.(Zugriffsverwaltung.java:37)

at main.Server.(Server.java:29)

at main.Server.main(Server.java:46)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值