连接一直保持打开状态。摆脱
OpenConnection与
CloseConnection和改变
ExecuteNonQuery这样的:
using (SQLiteConnection c = new SQLiteConnection(ConnectionString)){ c.Open(); using (SQLiteCommand cmd = new SQLiteCommand(sql, c)) { cmd.ExecuteNonQuery(); }}
此外,将 读取 数据的方式更改为此:
using (SQLiteConnection c = new SQLiteConnection(ConnectionString)){ c.Open(); using (SQLiteCommand cmd = new SQLiteCommand(sql, c)) { using (SQLiteDataReader rdr = cmd.ExecuteReader()) { ... } }}
不要尝试
像在这里一样自行管理连接池。首先,它比您编写的代码复杂得多,但是其次,它已经在
SQLiteConnection对象内部进行了处理。最后,如果您没有利用
using,您将
无法 正确 处理 这些对象,最终会遇到诸如现在所看到的问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)