SQLite的iOS上 - SQL复制从一个文件到另一个(SQLite on iOS - SQL

2019-07-29 03:58发布

我在我的iOS应用2个数据库文件:

  • 原始数据库(只读,保存在我的应用程序的主目录)
  • 用户的数据库(保存在用户的Documents文件夹中)

我需要运行一个SQL查询,从原始数据库到用户的,像复制:

INSERT INTO UserDatabase.MyTable
SELECT * FROM OriginalDatabase.MyTable;

这是可能从iOS上运行的SQLite? 问题是,这两个数据库是不同的文件夹中。 我想避免这样做的代码(C#)这项工作是显而易见的办法做到这一点,只是要慢得多。

我的应用程序编写与C#/ MonoTouch的,但是这可能是无关紧要的。

Answer 1:

解决了@Peter M的链接。

这里是SQL做到这一点在iOS上:

    ATTACH DATABASE '../YourApp.app/YourDatabase.db' AS OriginalDatabase;

    INSERT INTO Main.MyTable
    SELECT * FROM OriginalDatabase.MyTable;

    DETACH DATABASE OriginalDatabase;

注意使用的Main ,这是你连接到与数据库SqliteConnection ,在我的情况下,它位于该Documents夹中。

你可以做任何你需要对OriginalDatabase ,连接,子查询,等等。



文章来源: SQLite on iOS - SQL to copy from one file to another