[英]StringBuilder constructor accepts a StringBuilder object - why?
[英]Why execSQL accepts Object[] and raw Query String[]
我想有一個選項來調用'rawQuery',並傳遞一個整數列表,但看起來我做不到:所有'rawQuery'方法都需要字符串數組...
為什么? 我可以為每個傳遞的int對象調用'toString',但是在這里看不到任何邏輯。 為什么Google不提供接受對象列表的rawQuery?
是否有任何限制或約束?
可能我想念什么嗎?
謝謝。
可能是因為rawQuery不是首選的查詢方法。 而且由於sqlite列基本上沒有類型,所以它們可能不想假設對要傳遞的內容調用toString。
SQLite支持列上的“類型相似性”概念。 列的類型相似性是存儲在該列中的數據的推薦類型。 這里的重要思想是建議類型,而不是必需類型。 任何列仍可以存儲任何類型的數據。 只是有些列(如果有選擇)將更喜歡使用一種存儲類而不是另一種。 列的首選存儲類稱為其“關聯性”。
您是否有理由要使用rawQuery
而不是execSQL
?
如參數bindArgs的文檔中所述,參數列表中不接受任何復雜對象:
參量
sql要執行的SQL語句。 不支持用分號分隔的多個語句。
bindArgs只支持byte [],String,Long和Double的bindArgs。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.