如何在 iphone 中执行 sqlite?

How i do execute sqlite in iphone?

提问人:jhonnye 提问时间:9/27/2019 更新时间:9/27/2019 访问量:43

问:

我有以下问题。具有 sqlite 数据库的应用程序。我使用模拟器在 xcode 中运行应用程序。我有以下代码来知道我必须将数据库放在哪里。

sqlite3 *bd;

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                     NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];

NSString *dbPath = [documentsDir stringByAppendingPathComponent:@"bd.sqlite"];

NSLog(@"La ruta de la base de Datos es ---- %@",dbPath);

所以我得到了路径,并复制了sqlite数据库,所以应用程序在xcode中完美运行。 问题是当我连接我的iPhone并尝试运行该应用程序时。因为前面的代码在 iphone 上给了我一个路由,我试图将 sqlite 数据库放在那里,但它没有运行,所以应用程序被阻止,因为它找不到数据库,即使我把它放在那里。我不知道我正在做的事情是否正确,或者有另一种方法可以做到这一点。我在互联网上疯狂地寻找可能的解决方案,但没有一个适合我,我已经站了 3 个月试图在 iphone 上运行该应用程序。请提供一些帮助或建议,我将不胜感激。非常感谢。

iOS iPhone SQLite

评论

0赞 rmaddy 9/27/2019
数据库不会位于“文档”文件夹中。假设您将文件与应用打包在一起,它将在应用捆绑包中启动。如果需要,您需要在应用程序启动时将其从应用程序捆绑包复制到“文档”文件夹(并且仅当您需要写入数据库时)。
0赞 jhonnye 9/27/2019
非常感谢您的回复。但我有疑问,文档文件夹,但 mac 或 iphone ?.我使用数据库读取数据,然后将其显示在表中。谢谢
0赞 rmaddy 9/27/2019
我指的是 iOS 设备上的“文档”文件夹,这是您的代码尝试访问的内容。那不是文件所在的位置。它将位于您的 app bundle 中。Inglés por favor.
0赞 jhonnye 9/27/2019
注意:数据库位于应用程序文件夹中。
0赞 jhonnye 9/27/2019
请原谅我的尴尬。我对此很陌生,同样我的问题表述得很差。如果我在 mac 上有 sqlite 数据库并且它对我来说非常有效,那么我的问题是我必须将数据库放在 iphone 上的位置,以便当应用程序需要它时,我可以从中读取。在我放置的代码中,它告诉我数据库应该在 iphone 上的位置,以便应用程序可以访问,但是当我访问该路由时,没有这样的文件夹,我必须手动创建它,一旦我手动创建它,我复制 sqlite 数据库

答: 暂无答案