【发布时间】:2013-11-15 01:55:46
【问题描述】:
在嵌入式设备上打开和关闭 SQLite 连接时应采用这两种方法中的哪一种。
方法 A: - 应用启动时打开一次连接,应用退出时关闭连接
方法 B: - 每次必须执行 SQLite 查询时打开连接,并在完成后关闭连接
【问题讨论】:
在嵌入式设备上打开和关闭 SQLite 连接时应采用这两种方法中的哪一种。
方法 A: - 应用启动时打开一次连接,应用退出时关闭连接
方法 B: - 每次必须执行 SQLite 查询时打开连接,并在完成后关闭连接
【问题讨论】:
我会选择方法 B。这样可以避免潜在的锁定和多个进程/连接尝试对数据库执行写操作。
【讨论】:
重新打开连接需要 SQLite 再次重新打开文件并再次重新解析数据库架构。
SQLite 自动处理锁以防止多个连接同时写入,并且仅在事务处于活动状态时保留这些锁。 (见the documentation。)
方法 B 使所有数据库访问效率更低,并且没有任何好处。 仅当它恰好使您自己的代码更简单时才有意义。
【讨论】: