FMDB/sqlite 函数查询问题
FMDB / sqlite query problem with function
我是 swift 的新手,正在尝试了解 ios 编程。基本上我有一个 table 其中 "id" 和 "fact" 列。 id 是主键,这里是 swift 函数,我正在尝试查询值
func getItemsFromRow(fact_cid: String) ->[FactsData]{
var rowData: [FactsData]!
let rawQ = "select * from facts where \(facts_id)=?"
if (openDatabase()){
do{
let results = try database.executeQuery(rawQ, value(forKey: fact_cid))
while results.next(){
let currentFact = FactsData(factid: results.string(forColumn: facts_id), factsdata: results.string(forColumn: facts_fld))
if rowData == nil {
rowData = [FactsData]()
}
rowData.append(currentFact)
}
}
}
return rowData
}
但是这一行给我错误
let results = try database.executeQuery(rawQ, value(forKey: fact_cid))
错误是
Cannot invoke 'executeQuery' with an argument list of type '(String, Any?)'
我正在尝试将 id 作为字符串传递。不确定我在这里做错了什么。
非常感谢任何帮助。
改为
let results = try database.executeQuery(rawQ, values: [fact_cid])
因为第二个参数应该是一个数组
我是 swift 的新手,正在尝试了解 ios 编程。基本上我有一个 table 其中 "id" 和 "fact" 列。 id 是主键,这里是 swift 函数,我正在尝试查询值
func getItemsFromRow(fact_cid: String) ->[FactsData]{
var rowData: [FactsData]!
let rawQ = "select * from facts where \(facts_id)=?"
if (openDatabase()){
do{
let results = try database.executeQuery(rawQ, value(forKey: fact_cid))
while results.next(){
let currentFact = FactsData(factid: results.string(forColumn: facts_id), factsdata: results.string(forColumn: facts_fld))
if rowData == nil {
rowData = [FactsData]()
}
rowData.append(currentFact)
}
}
}
return rowData
}
但是这一行给我错误
let results = try database.executeQuery(rawQ, value(forKey: fact_cid))
错误是
Cannot invoke 'executeQuery' with an argument list of type '(String, Any?)'
我正在尝试将 id 作为字符串传递。不确定我在这里做错了什么。
非常感谢任何帮助。
改为
let results = try database.executeQuery(rawQ, values: [fact_cid])
因为第二个参数应该是一个数组