jon*_*ers 4 c# sql sqlite xamarin.ios ios
我的 iOS 应用程序中有 2 个数据库文件:
Documents文件夹中)我需要运行 SQL 查询以从原始数据库复制到用户的数据库,例如:
INSERT INTO UserDatabase.MyTable
SELECT * FROM OriginalDatabase.MyTable;
Run Code Online (Sandbox Code Playgroud)
这可以通过在 iOS 上运行的 SQLite 实现吗?问题是两个数据库位于不同的文件夹中。我想避免在代码(C#)中完成这项工作,这是显而易见的方法,只是速度慢得多。
我的应用程序是用 C#/MonoTouch 编写的,但这可能无关紧要。
通过@Peter M 的链接解决了。
以下是在 iOS 上执行此操作的 SQL:
ATTACH DATABASE '../YourApp.app/YourDatabase.db' AS OriginalDatabase;
INSERT INTO Main.MyTable
SELECT * FROM OriginalDatabase.MyTable;
DETACH DATABASE OriginalDatabase;
Run Code Online (Sandbox Code Playgroud)
请注意 的使用Main,这是您连接到的数据库SqliteConnection,在我的例子中它位于Documents文件夹中。
您可以针对OriginalDatabase、连接、子选择等执行任何您需要的操作。