我正在与经由JavaScript使用的Safari本地存储(SQlite的DB)一个PhoneGap的应用工作:

https://developer.apple的.com /库/存档/文档/ iPhone /概念/ SafariJSDatabaseGuide / UsingtheJavascriptDatabase / UsingtheJavascriptDatabase.html

在第一负载中,应用创建数据库,表和通过一系列INSERT语句的填充数据。

如果用户关闭应用,同时该处理正在发生,然后我的应用程序数据库将处于不一致的状态。

我更喜欢做的是部署的SQLite数据库作为我的iTunes应用程序包装的一部分,所以没有什么必须在应用程序冷启动进行填充。不过,我不知道这是可能的 - 所有的谷歌命中为这个话题我能找到的指的是核心数据提供的SQLite这是我们正在使用不是...

如果这是不可能的,我能包住整个事情在一个事务中,并保持再尝试它重新启动应用程序时?

做不到这一点,我想我可以创建一个简单的表与一个布尔列“is_app_db_loaded?”并且其设置为true我处理我的所有插入之后。但是,这是真毛...

有帮助吗?

解决方案

我觉得该解决方案可为你工作。其涉及预创建表,并将其复制在当应用程序启动。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top