【问题标题】:SQLite: [Single connection + Multiple attaches] vs. [Multiple connections]SQLite:[单连接+多连接] vs. [多连接]
【发布时间】:2018-06-10 04:59:55
【问题描述】:

在我的桌面应用程序中,我需要使用几个 (2-10) 数据库(使用 sqlite C/C++ 接口),它们都具有相同的架构。我有两个选择:打开与这些数据库中的任何一个的单个连接,然后ATTACH 其余数据库,或者我可以为每个数据库打开一个单独的连接。性能会有什么不同吗?此外,SQLite documentation 提到对附加数据库的数量有限制,但从未提及对打开连接数(到不同数据库)的限制。

从编码方便的角度来看,第二个选项似乎更可取:对于多个连接,我可能只是将相应的 sqlite3* 对象传递给执行查询的函数,而不对这些函数进行任何修改。但是对于附加的数据库,我必须将数据库名称附加到表中,这比较麻烦。

【问题讨论】:

    标签: sqlite


    【解决方案1】:

    当你正在修改数据并附加了数据库时,SQLite 需要管理一个单独的master journal。所以 ATTACHing 可能会更慢。

    仅当您想在同一查询中访问多个数据库中的数据时才需要 ATTACH。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多