Я новичок в Swift, и сегодня я следовал учебнику здесь (начало работы с SQLite).
Поэтому мой код в основном такой же:
import Foundation
import UIKit
import Alamofire
import SwiftyJSON
import SQLite.Swift
import PlaygroundSupport
enum SQLiteError: Error {
case OpenDatabase(message: String)
case Prepare(message: String)
case Step(message: String)
case Bind(message: String)
}
class SQLiteDatabase {
fileprivate let dbPointer: OpaquePointer?
fileprivate init(dbPointer: OpaquePointer?) {
self.dbPointer = dbPointer
}
deinit {
sqlite3_close(dbPointer)
}
static func open(path: String) throws -> SQLiteDatabase {
var db: OpaquePointer? = nil
// 1
if sqlite3_open(path, &db) == SQLITE_OK {
// 2
return SQLiteDatabase(dbPointer: db)
} else {
// 3
defer {
if db != nil {
sqlite3_close(db)
}
}
if let errorPointer = sqlite3_errmsg(db) {
let message = String.init(cString: errorPointer)
throw SQLiteError.OpenDatabase(message: message)
} else {
throw SQLiteError.OpenDatabase(message: "No error message provided from sqlite.")
}
}
}
}
let db: SQLiteDatabase
do {
db = try SQLiteDatabase.open(path: "")
print("Successfully opened connection to database.")
} catch SQLiteError.OpenDatabase(_) {
print("Unable to open database. Verify that you created the directory described in the Getting Started section.")
PlaygroundPage.current.finishExecution()
}
Проблема в том, что Свифт подтверждает мне, что он "успешно открыл соединение с базой данных". Но дело в том, что я никогда не создавал файл для базы данных ... и я не знаю, где я могу найти фактический файл.
Путь к базе данных должен быть racine, поскольку переменная установлена в папку по умолчанию ("")
Заранее благодарю за помощь!