我正在开发一个带有两个 SQLite 数据库的 iPhone 应用程序。我想知道我是否应该只使用一个。
第一个数据库有十几个小表(每个都有四到五个 INTEGER 或 TEXT 列)。大多数表只有几十行,但一张表会有几千行“项目”。这些表都是相关的,因此它们之间有许多连接。
第二个数据库只包含一个表。它有一个 BLOB 列,其中一行与第一个数据库中的一些“项目”(项目的照片)相关。这些 BLOB 仅在程序的一小部分中使用,因此它们很少与第一个数据库连接或连接(无需连接即可轻松获取行)。
第一个数据库文件大小约为 1 MB;带有 BLOB 的数据库会更大——大约 50 兆字节。我将 BLOB 分开是因为我希望能够备份较小的数据库而不必携带 BLOB。我还认为分离 BLOB 可能会提高较小表的性能,但我不确定。
拥有两个数据库(尤其是 SQLite 数据库)来分隔 BLOB 与只有一个数据库和一个包含非常窄的表的表与 BLOB 表混合的优点和缺点是什么?