Класс FMPQuery предназначен для описания запроса данных.
class FMPQuery
Свойство | Описание |
database |
База данных.
var database: FMPDatabase? { get } |
query | SQL-запрос в базу данных.
var query: String { get } |
isResumable | Использование докачки при запросе к серверу.
var isResumable: Bool { get set } |
pathForResume |
Путь к папке в директории приложения, где будут храниться файлы
докачки.
var pathForResume: String { get set } |
Метод | Описание |
download(transactions:completion:) |
Загрузка табличных данных в базу данных.
func download(transactions: [FMPTransaction] = [], completion: @escaping FMPRequestResponsesHandler) Параметры:
|
get() | Выполнение SQL-запроса в базу данных. Возвращает словарь NSDictionary
с записями из базы данных.
func get() -> [NSDictionary]? |
Включение/выключение докачки:
// Построим экземпляр класса FMPQuery. Подробнее в примерах к FMPQuery.Builder.
let query: FMPQuery = fmp.query.build()
// Установим путь к папке в локальной директории для файлов докачки
query.pathForResume = "path"
//Включим докачку
query.isResumable = true
// Выключим докачку
query.isResumable = false
Загрузка табличных данных в базу данных:
// Построим экземпляр класса FMPQuery. Подробнее в примерах к FMPQuery.Builder.
let query: FMPQuery = fmp.query.build()
// Загрузим данные указанных в запросе ресурсов
query.download() { (responses) in
if !responses.map({ $0.success }).contains(false) {
// Все данные указанных в запросе ресурсов успешно загружены в базу данных
} else {
// Выведем коды и описания ошибок
responses.compactMap({ $0.error }).forEach {
print($0.code, $0.description)
}
}
}
// Загрузим данные с указанием транзакции
let transaction: FMPTransaction
query.download(transactions: [transaction]) { (responses) in
if !responses.map({ $0.success }).contains(false) {
// Все данные указанных в запросе ресурсов успешно загружены в базу данных
} else {
// Выведем коды и описания ошибок
responses.compactMap({ $0.error }).forEach {
print($0.code, $0.description)
}
}
}
Выполнение SQL-запроса:
// Построим экземпляр класса FMPQuery. Подробнее в примерах к FMPQuery.Builder.
let query: FMPQuery = fmp.query.build()
// Получим результат sql-запроса в базу данных
let sqlResult: [NSDictionary]? = query.get()
См. также: