Какую библиотеку SQLite вы рекомендуете на iPhone / iPad? - PullRequest
2 голосов
/ 12 августа 2010

Несколько человек обернули библиотеку SQLite или предоставили альтернативы. Каковы их относительные достоинства?

Ответы [ 3 ]

4 голосов
/ 12 августа 2010

Основные данные

Да, немного странный ответ.

Существует три основных причины использования SQLite напрямую или через оболочку.

  • Вы совместно используете базы данных на разных платформах и не можете использовать схему Core Data

  • Вы действительно нуждаетесь в сырой производительности SQLite и имеете мастерство API SQLite 17-го уровня, необходимое для фактического достижения указанного преимущества в производительности над SQLite.

  • Вы знаете SQLite изнутри и снаружи, не любите изучать новые вещи и хотите заново изобрести биты, необходимые для перехода между базой данных и экраном. (Слегка выдуманный снова).

Core Data предоставляет вам огромное количество функциональных возможностей, которые немного трудно сделать. То есть управление графами объектов с полной целостностью и поддержкой отмены.

3 голосов
/ 12 августа 2010

bbum дал самый краткий ответ, и вы должны тщательно обдумать, не используя Core Data.

Но я думал, что вы также заслуживаете ответа на свой актуальный вопрос.

Существует два основных подхода к использованию обертки:

FMDB использует подход, который значительно упрощает использование оверлея Cocoa API для SQLLite. Это может быть хорошо, если вы хорошо знаете SQL и дизайн базы данных и просто хотите простую базу данных.

Другие подходы - это, как правило, более объектно-реляционные системы отображения, которые пытаются дать вам объектное представление базового хранилища данных и скрывают от вас некоторые запросы.

В обоих случаях, если у вас действительно простое хранилище данных, их может иметь смысл использовать, если у вас есть конкретная причина ... но использование Core Data дает вам очень много бесплатно (хотя я допускаю, что кривая обучения может быть крутым).

0 голосов
/ 10 июля 2011

Существует третий подход.Этот третий подход позволяет создавать операторы SQLite с помощью набора классов Objective-C.Они будут обрабатывать, как ваши данные конвертируются и очищаются.Они также гарантируют, что ваши утверждения правильно построены.Вы можете попробовать https://github.com/ziminji/objective-c-sql-query-builder Эта библиотека также предлагает реляционное сопоставление объектов (ORM), которое следует шаблону проектирования Active Record.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...