Я создаю приложение с работами, когда пользователь онлайн или оффлайн, поэтому для этого я использовал sqlite
базу данных, поэтому, когда я получаю данные из таблицы, я не могу получить данные, вот мой код для извлечения данных
func get_sub_element_offline_data(){
self.subelementOfflineData.removeAll()
let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
.appendingPathComponent("EOBA.sqlite")
if sqlite3_open(fileURL.path, &db) != SQLITE_OK {
print("error opening database")
}
let queryString = "SELECT * FROM Sub_ElementList_NEW1 WHERE element_id = \(elementID)"
var stmt:OpaquePointer?
if sqlite3_prepare(db, queryString, -1, &stmt, nil) != SQLITE_OK{
let errmsg = String(cString: sqlite3_errmsg(db)!)
print("error preparing insert: \(errmsg)")
return
}
while(sqlite3_step(stmt) == SQLITE_ROW){ //here while statement not able to execute
let id = sqlite3_column_int(stmt, 0)
let element_id = String(cString: sqlite3_column_text(stmt, 1))
let sub_elements_id = String(cString: sqlite3_column_text(stmt, 2))
let fk_elements_id = String(cString: sqlite3_column_text(stmt, 3))
let title = String(cString: sqlite3_column_text(stmt, 4))
print(id)
print(element_id)
print(sub_elements_id)
print(fk_elements_id)
print(title)
subelementOfflineData.append(SubElementOfflineModel(id: Int(id), sub_elements_id: String(describing: sub_elements_id), title: String(describing: title)))
do {
let jsonData = try JSONEncoder().encode(subelementOfflineData)
let jsonString = String(data: jsonData, encoding: .utf8)!
print(jsonString)
} catch {
print(error)
}
}
}
Я выбираю данные на основе списка элементов. У меня есть проверочный идентификатор элемента, который существует в той же таблице, но я все еще не могу получить данные
, поэтому, пожалуйста, помогите с этим