0

我的 iOS 程序在服务器中下载 [A.sqlite3] 文件。

我的 iOS 在本地已经有 [b.sqlite3] 文件

我想在本地 iOS 中加入 A.sqlite3 的表和 b.sqlite3 的表。

但是,由于表的数据库不同,我在加入表时遇到了问题。

如何将表放在同一个数据库中?

4

1 回答 1

0

您可以使用 sqlite ATTACH语法。假设您在数据库 A.sqlite3 中有一个表 A,在数据库 B.sqlite3 中有一个表 B,从命令行,步骤将是:

$ sqlite3 A.sqlite3
sqlite> ATTACH 'B.sqlite3' AS dbB;
sqlite> SELECT a.*,dbB.b.* FROM a,dbB.b WHERE (a.id = dbB.b.id);

ATTACH为附加数据库文件提供了一个前缀,您可以在 sql 语句中使用该前缀。

在 iPhone 应用程序上,像以前一样打开 A.sqlite3 数据库,然后像传递其他 sql 命令一样将 sql ATTACH 命令传递给 sqlite 库,并记住将完整路径名作为 ATTACH 的第一个参数。

于 2012-05-06T17:20:48.047 回答