【问题标题】:Is there a good Core Data browsing tool out there? [closed]有没有好的 Core Data 浏览工具? [关闭]
【发布时间】:2010-12-09 05:49:51
【问题描述】:

从 SQLite 迁移到 Core Data 时我错过的一件事是能够直接查询我的数据库以分析数据。有没有人知道允许以类似方式浏览核心数据存储的工具?

【问题讨论】:

  • 您的核心数据存储不只是一个 SQLite 文件吗?
  • 如果您使用的是 SQL 存储类型,是的,但是,它不会反映您在为 Core Data 对象建模时创建的结构,如果您在 SQL 中查看它,它不会任何意义。

标签: core-data


【解决方案1】:

CoreDataEditor 是 20 美元,并且不能快速轻松地浏览托管对象上下文的关系。必须让 MOM 使用与您的应用程序完全相同的名称(??!)或类似名称,这也有些疯狂。我不打算进入并开始重命名东西只是为了浏览我的对象存储。不可否认,它确实有一个非常酷的应用程序图标,而且我从名称中假设您可以编辑内容。但是,就像最初的海报一样,我只需要一些可以让我打开 Core Data 持久存储并快速了解我的托管对象的东西。

我发现了一种更好的解决方案,它提供了对托管对象的关系的直观和轻松的浏览,并且是免费的,这里详细介绍了:

Browsing Core Data databases using F-Script

您基本上安装了 F-Script,然后运行 ​​Mr. Tyson 的 Applescript,它要求您定位您的 MOM(例如 YourApp.app),然后是用作持久性存储的 SQLite 数据库(例如 YourAppPersistentStore. sqlite)。如果您使用的是 iPhone 模拟器,这些都在您的 Simulator 目录中——例如:

/Users/me/Library/Application\ Support/iPhone\ Simulator/4.2/Applications/5452AC87-0426-4303-9402-C5F5900C7321/YourApp.app
/Users/me/Library/Application\ Support/iPhone\ Simulator/4.2/Applications/5452AC87-0426-4303-9402-C5F5900C7321/Documents/db/YourAppPersistentStore.sqlite 

然后选择一个实体并点击“获取”。您可以运行 NSPredicates 来过滤其项目,或单击一个项目并单击“浏览”。它打开“F-Script 对象浏览器”,从这个窗口中,您可以跟踪关系并基本上浏览整个托管对象上下文中的所有项目,检查每个项目的所有属性。太棒了。

【讨论】:

  • 我想这仅适用于模拟器,因为您无法访问设备上的文件。真是太好了…… :(
  • 如果您将 sqlite 文件存储在 app bundle Documents 文件夹中,您可以使用 iTunes 从设备中复制它们。不完美,但它有效。 - (NSURL *)applicationDocumentsDirectory { return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]; }
  • 为我工作,这是下载应用程序的构建历史记录:github.com/yepher/CoreDataUtility/wiki
【解决方案2】:

问题Viewer/Query Analyzer for SQLite databases可能重复。

为了它的价值,我尝试了很多不同的 SQLite 浏览器工具,包括免费的和付费的。我不介意花钱买一些很棒的东西,但老实说,免费的 SQLite 数据库浏览器和付费的应用程序之间的差距——其中一些相对昂贵——是很小的。

所以我选择了 SQLite 数据库浏览器。 Here's the web site for download

如果有一款价格合理的付费应用,我肯定会购买。类似于 SQL Navigator 之类的东西,尽管这表明 SQL Navigator 的 UI 具有可笑的功能。

Core Data Editor 不是我听说过的,所以我也要去看看。

【讨论】:

  • 三票否决且未提供 cmets。如果您能提供有助于改进的理性,请提供。
  • 您可能被否决了,因为最初的问题是关于在 Mac OS 环境中浏览 Core Data 存储,而您的答案似乎是以 Windows 为中心的。尽管如此,如果这是唯一的原因,3 票否决仍然有点苛刻,因为我仍然能够按照您的第二个链接并获得用于我的 Mac 开发目的的 SQLite 数据库浏览器。我投票支持你的答案。
  • SQLite 数据库浏览器并不完全存在。您无法清楚地看到这些关系。
  • 真的。它有时也会崩溃。有没有更好的工具推荐?
【解决方案3】:

MesaSQLLite - 我只想查看一些数据。这样做了,很简单。

【讨论】:

【解决方案4】:

CoreDataPro 可让您探索数据模型并查看应用程序存储的数据。你可以从github上的项目页面下载:

https://github.com/yepher/CoreDataUtility

【讨论】:

  • 请避免发布仅链接的答案。在此处发布一些代码,澄清您的答案,仅使用链接作为参考。
  • 欢迎来到 StackOverflow!请详细说明该工具,以防万一将来某个时候链接断开。
  • 如果您是此解决方案的作者(您将其地址设置为您的网站),您必须在回答中披露您的从属关系。请阅读常见问题解答:stackoverflow.com/faq#promotion
【解决方案5】:

如果你使用 SQLite 作为后端,你可以试试我的应用 SQLite Professional (App Store)。

该应用有一些简洁的功能,例如:

  • 自动完成和语法高亮显示。
  • 版本集成(回滚到以前的版本)。
  • 内联数据过滤。
  • 能够加载sqlite extensions
  • SQLite 2 兼容性。
  • 导出选项为 CSV、JSON、XML 和 MySQL。
  • 从 CSV、JSON 或 XML 导入。
  • 列重新排序。
  • 全屏支持。

通过网站提供 7 天试用版,在 mac 应用商店提供 free readonly version

【讨论】:

    【解决方案6】:

    我最终使用 SQLPro for SQLite (https://www.sqlitepro.com/) 即使是免费版本也足以进行开发(在完整版中,您可以获得内联编辑等)

    • 专业人士 - 可以进行 sql 查询
    • 缺点 - 不显示关系

    还推荐 Simpholders 应用程序 (http://simpholders.com/),它使用包含文件夹的 db.sql 文件打开查找器

    【讨论】:

      【解决方案7】:

      这里有一个类似的话题How view data stored in Core Data?

      我已经添加了一条评论,我说我创建了一个 macOS 应用程序来浏览您的 Core Data 内容。当您使用 SQLite 浏览器时,它会隐藏 Core Data 实现。您还可以列出所有最新运行的应用程序和模拟器,这样您就可以轻松找到您正在寻找的应用程序。更多信息在这里:

      http://www.microedition.biz/simMagnifier

      它还有其他功能,例如访问模拟器的文件夹,如 Documents、Application Support 等。您也可以查看 NSUserDefaults 的内容。

      该应用程序不是免费的对不起!但至少你有 7 天的试用期。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-13
        • 2011-05-09
        • 2023-04-05
        • 2012-05-10
        • 2010-10-05
        • 2011-01-04
        • 2011-02-16
        • 1970-01-01
        相关资源
        最近更新 更多