Ответ 1
Предполагая, что у вас уже установлено соединение с базой данных db
, чтобы получить список имен столбцов, вы можете использовать следующий код:
do {
let tableInfo = Array(try db.prepare("PRAGMA table_info(table_name)"))
for line in tableInfo {
print(line[1]!, terminator: " ")
}
print()
} catch _ { }
где table_name
заменяется литеральной строкой имени вашей таблицы.
Вы также можете добавить
print(tableInfo)
чтобы увидеть больше информации о вашей таблице.
Кредиты
Благодаря этому ответу за подсказку, как это сделать.
Пример Функция
Протестированная процедура из Joe Blow, чтобы немного набрать текст:
func findColumns(_ tableName:String) {
var asAnArray:[String] = []
do {
let s = try db!.prepare("PRAGMA table_info(" + tableName + ")" )
for row in s { asAnArray.append(row[1]! as! String) }
}
catch { print("some woe in findColumns for \(tableName) \(error)") }
let asAString = asAnArray.joined(separator: ",")
print(asAnArray)
print(asAString)
}