我正在使用android studio制作日历应用程序。我创建了一个数据库来保存一个事件。只要Android虚拟设备正在运行,我就可以打开事件但是当我关闭它并再次打开它时,我不会再次打开事件。 只要AVD正在运行,数据库是否可能仍然存在?
答案 0 :(得分:0)
好吧,我可以在你的代码片段中看到你在同一个班级中进行查询和数据操作,如果你已经将责任分开了,那么打开和关闭连接的生活可能会更容易。
您应该已经创建了一个DatabaseFactory来设置与数据库的连接。有一些简单的方法,比如openConnection(string connectionString)Close()和query(string sql,string [] param)。
另一个名为DatabaseConsumer的类应该基本上打开一个连接,使用查询,然后返回你想要的数据(ResultSet?),然后关闭连接。
但是要根据您的设计回答您的问题,您可以在完成while语句(res.moveToNext)后关闭连接。像myDB.closeConnection()这样的东西?
编辑:未关闭连接的影响可能使服务器保持该连接,某些配置值将说明您的数据库可以处理多少个打开的连接。过了一会儿,数据库将不允许连接并给你一个SQLServerException,boohoo。