Класс FMPDatabase предназначен для описания локальной базы данных.
class FMPDatabase
Свойство | Описание |
path |
Полный путь к базе данных в директории приложения.
var path: String { get } |
Метод | Описание |
open() |
Открытие соединения с базой данных. В случае успешного открытия
соединения с базой данных возвращает true.
func open() -> Bool |
close() | Закрытие соединения с базой данных.
func close() |
query(_:) | Отправляет SQL-запрос к локальной базе данных.
func query(_ query: String) -> [NSDictionary]? Параметры:
|
getTableName(for:) | Получение реального имени таблицы в локальной базе данных.
Возвращает название таблицы в локальной базе данных.
func getTableName(for table: FMPTable) -> String? Параметры:
|
dropCache(for:) | Удаление кэшированных таблиц из базы данных для указанного
ресурса. В случае успешного удаления таблиц из базы данных возвращает
true.
func dropCache(for resource: FMPResource) -> Bool Параметры:
|
drop() | Удаление файла базы данных из директории приложения.
func drop() throws |
copy() | Получение экземпляра класса-строителя для копирования FMPDatabase.
Возвращает экземпляр класса-строителя FMPDatabase.Builder.
func copy() -> FMPDatabase.Builder |
Открытие соединения с базой данных:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database
.path("path")
.build()
// Откроем соединение с базой данных
let openSuccess: Bool = database.open()
Закрытие соединения с базой данных:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database
.path("path")
.build()
// Закроем соединение с базой данных
database.close()
SQL-запрос к базе данных:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database.build()
// Получим результат SQL-запроса в базу данных
let queryResult: [NSDictionary]? = database.performQuery("SELECT * FROM table")
Получение реального имени таблицы в локальной базе данных:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database.build()
// Построим экземпляр класса FMPResource, описывающий интересующий нас ресурс мобильной платформы. Подробнее в примерах к FMPResource.Builder.
let resource: FMPResource = fmp.resource
.name(resourceName)
.params(inputParams)
.build()
// Построим экземпляр класса FMPTable, описывающий интересующую нас таблицу ресурса мобильной платформы. Подробнее в примерах к FMPTable.Builder.
let table: FMPTable = fmp.table
.name("tableName")
.resource(resource)
.build()
// Получим реальное имя таблицы в базе данных
let realTableName: String = database.getTableName(for: table)
Удаление кэшированных таблиц из базы данных для указанного ресурса:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database.build()
// Построим экземпляр класса FMPResource, описывающий интересующий нас ресурс мобильной платформы. Подробнее в примерах к FMPResource.Builder.
let resource: FMPResource = fmp.resource
.name(resourceName)
.params(inputParams)
.build()
// Удалим все кэшированные таблицы для указанного ресурса из базы данных
let dropSuccess: Bool = database.dropCache(for: resource)
Удаление файла базы данных из директории приложения:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database.build()
// Удалим файл базы данных из директории приложения
do {
try database.drop()
} catch let error {
// Выведем описание ошибки
print(error.localizedDescription)
}
Копирование FMPDatabase:
// Построим экземпляр класса FMPDatabase. Подробнее в примерах к FMPDatabase.Builder.
let database: FMPDatabase = fmp.database.build()
// Скопируем экземпляр класса FMPScheme.
let databaseCopy: FMPDatabase = database.copy().build()
См. также: