【问题标题】:core data with pre populated sqlite from csv!来自csv的预填充sqlite的核心数据!
【发布时间】:2011-04-01 04:05:54
【问题描述】:

我已经为此苦苦挣扎了几天,在搜索了互联网之后,我仍然没有得到它的工作。我有一个 csv 文件,我需要从中填充一个 sqlite db 以用于核心数据。

我以为我在这里找到了解决方案http://ablogontech.wordpress.com/2009/07/13/using-a-pre-populated-sqlite-database-with-core-data-on-iphone-os-3-0/,但我一辈子都无法让它发挥作用。以下是我采取的步骤。

  1. 创建了一个新的 Core Data 项目并生成了模型和托管对象类;
  2. 在 rootViewController 的 vdl 中执行了一个 fetch 请求(我不确定为什么这是必要的,但显然是这样?)
  3. 将我应用的文档目录中的 xxx.sqlite 复制到另一个目录中。
  4. 从终端执行了以下 sqlite 命令:

sqlite3 xxx sqlite> .mode csv yyy sqlite> .import yyy.csv yyy

现在,在将 csv 数据导入我的表时,我得到一个 no such table 错误!另外,当我执行 .tables 命令时,我的表名前会出现 Z 吗? 我以前以这种方式将数据从 csv 导入到表中,但没有使用生成的核心数据数据库,我认为这就是问题所在。有谁知道我哪里出错了或者我的问题有更好的解决方案。请让我知道,因为我要疯了..

非常感谢

朱尔斯

【问题讨论】:

    标签: iphone sqlite core-data


    【解决方案1】:

    看看这个post 您要做的是设置核心数据堆栈,然后导入每条记录并插入新的托管对象,并使用 csv 中的值来设置对象的属性。

    【讨论】:

    • 您好,感谢您的回复。我实际上已经决定使用与我在这里找到的类似的方法。 iphoneinaction.manning.com/iphone_in_action/2009/09/…再次非常感谢
    • Jules,你能描述一下你使用的方法,或者发布代码吗?我目前正在做同样的事情。
    猜你喜欢
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-04
    • 2011-09-29
    • 1970-01-01
    • 2011-12-17
    • 2014-10-18
    相关资源
    最近更新 更多