@Hirako797

Как исправить ошибку при подключении базы данных SQLite в Swift?

При использовании SQLite.Swift для работы с базой данных SQLite приложения собирается. Но, после того как погрузилось в симуляторе, крашиться. Не могу понять в чем проблема. Подскажите кто может?
Вот код:
import Foundation
import SQLite

class Database {
    static let shared = Database()
    public let connection: Connection?
    private init() {
        let dbPath = Bundle.main.path(forResource: "sqliteExample", ofType: "db")! <i>// вот здесь ошибка!</i>
        do {
            connection = try Connection(dbPath, readonly: true)
         } catch {
            connection = nil
            let nserror = error as NSError
            print ("Cannot connect to Database. Error is: \(nserror), \(nserror.userInfo)")
        }
    }
}

Ошибка:
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value

Example[19989:2210978] libMobileGestalt MobileGestalt.c:890: MGIsDeviceOneOfType is not supported on this platform.

На скрине закомментирован работающий вариант, но к сожалению, не могу подключить нужную мне БД.5bc9f6bd1f65f381025137.png
  • Вопрос задан
  • 381 просмотр
Решения вопроса 1
@Hirako797 Автор вопроса
Решение нашел. Вопрос закрыт.
import Foundation
import SQLite

class Database {
static let shared = Database()
public let connection: Connection?
public let dbFileName = "Example.db"
private init() {
let dbPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first as String!
do {
connection = try Connection("\(dbPath!)/Example.db")
} catch {
connection = nil
let nserror = error as NSError
print ("Cannot connect to Database. Error is: \(nserror), \(nserror.userInfo)")
}
}
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы