2016-07-18 4 views
4

Я довольно новичок в быстрой кодировке, но я работаю над приложением, которое действительно нуждается в базе данных для большого количества данных. Я посмотрел на coredata, и, похоже, это не то, что мне нужно. Я полная база данных, которая работает с операторами sql, действительно то, что я ищу.Swift 3 sqlite/используя базу данных?

В Интернете есть много информации о создании базы данных sqlite в iOS, но похоже, что вещи могли измениться с момента появления Swift 3 и xcode 8.

Я не уверен, как на самом деле «подключиться» к базе данных sqlite из проекта, весь код, который я видел, требует «пути» к базе данных, которая находится на компьютере, но когда приложение пользователи, очевидно, не смогут получить доступ к этому пути. Вам нужно создать файл .sqlite в проекте?

Благодарим за помощь!

ответ

2

Вам обязательно нужен файл базы данных, и этот файл базы данных имеет путь. Даже на iOS.

Теперь, если пользователи вашего приложения могут изменять базу данных, вероятно, файл базы данных хранится в папке Documents, специальной папке, доступной всем приложениям iOS. Создайте путь к файлу внутри этой папки и откройте базу данных по этому пути. SQLite при необходимости создаст пустую базу данных.

Если ваши приложения не должны изменять базу данных (например, для приложения английского словаря), то в базе данных, вероятно, есть ресурс вашего приложения. Ресурсы - это файлы, входящие в состав вашего приложения. Вы запрашиваете NSBundle.main для пути этого ресурса и открываете соединение с ним.

Вы можете использовать библиотеку GRDB.swift в необходимой поддержке: https://github.com/groue/GRDB.swift. Он поддерживает Swift 2.2/2.3/3.0.

Смежные вопросы