2017-10-04 77 views
1

我正在學習FMDB,有很多種方法'executeQuery'和'executeUpdate'。Swift FMDB:我必須使用哪種方法?

executeQuery(sql,values:[Any]) 
executeQuery(sql,withArgumentsIn: [Any]) 
executeUpdate(sql,values:[Any]) 
executeUpdate(sql,withArgumentsIn: [Any]) 

我想知道這些方法的差異,當我必須使用哪種方法。

我可以使用任何方法嗎?

我感謝你的答案。 謝謝

回答

1

的executeQuery(SQL,值:[任意]):

這種方法有返回類型FMResultSet。它會給出通過查詢選擇的所有記錄。我們可以使用這種方法執行SELECT聲明。

的executeUpdate:

這種方法有返回類型布爾。我們可以使用此方法執行INSERT,UPDATE,DELETE語句。

例如

let sql = "insert into User(UserName,Address,Postcode) values(:username,:address,:postcode)" 
let args = [「username」:」Tom」,」 address」:」Newyork」,」 postcode」:」123467」] 
executeUpdate(sql,values:args) 
0

的executeUpdate(...)被用於所有可 修改數據庫中的查詢

的executeUpdate(...)方法(換言之,非Select查詢)

database.executeUpdate("insert into test (x, y, z) values (?, ?, ?)", values: ["a", "b", "c"]) 

的executeQuery(...)

SELECT語句是一個查詢和通過的 -executeQuery ...的方法之一被執行。

database.executeQuery("select x, y, z from test", values: nil) 

FMDB

+0

是在有任何的executeUpdate差(SQL,值:[任意])和 的executeUpdate(SQL,withArgumentsIn:[任意])? 我可以使用任何東西嗎? – JKU

+0

您可以通過跳轉到定義來查看'FMDatabase.h'類中的定義,它是關於拋出'Error' – Jack

相關問題