2011-06-07 122 views

回答

0

如果您已經使用了特定的SQLiteQueryBuilder方法,例如, appendWhere(),你可以簡單地通過調用buildQuery()產生潛在的SQL語句:

SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); 

// call qb.appendWhere(), qb.appendColumns(), qb.setProjectionMap() etc. 

String sql; 
sql = qb.buildQuery(null, null, null, null, null, null, null); // pre API 11 
sql = qb.buildQuery(null, null, null, null, null, null); // API 11 and later 

兩種方法調用buildQueryString()結合之前已預先用自己的參數單獨的方法設置的參數。它們不會更改SQLiteQueryBuilder對象的狀態,因此在執行查詢之前可以安全使用。

謹慎的一句話:我從代碼本身學到了這一點,而javadoc並未提及使用此方法獲取SQL字符串。因此,我建議警惕會改變方法行爲的變化。