現在我的代碼如下所示:或操作在WHERE子句
Cursor cursor = getContentResolver().query(messagesUri, null,"address=?", smsNo, null);
其中smsNo
是一個單陣列。
我想向該數組添加元素並在WHERE子句中實現OR操作。這可能會繼續使用數組嗎?
現在我的代碼如下所示:或操作在WHERE子句
Cursor cursor = getContentResolver().query(messagesUri, null,"address=?", smsNo, null);
其中smsNo
是一個單陣列。
我想向該數組添加元素並在WHERE子句中實現OR操作。這可能會繼續使用數組嗎?
我不太清楚你在問什麼,但你當然可以繼續在這裏使用數組。如果您問如何擴展現有數組以獲得更多項目,則可以使用Arrays.copyOf(oldArray,newSize)在其中創建更多空間。然後你可以使用多個?查詢字符串中的佔位符引用新項目。
例如:
queryParameters = Arrays.copyOf(smsNo, 2);
queryParameters[1] = "another number"
Cursor cursor = getContentResolver().query(messagesUri, null,"address=? or address=?", queryParameters, null);
我過於複雜的情況在這裏,我雖然你不知何故必須指定queryParameters中的值的確切位置(如queryParameters [0]等)。無論如何,這正是我所尋找的,謝謝! – user1301428 2012-04-12 17:58:45
光標光標= getContentResolver()的查詢(messagesUri,NULL, 「地址=?」 + 「您的值」 + 「或地址=?」,smsNo,NULL);。 – 2012-04-12 17:35:06
我不會推薦將用戶提供的查詢值直接放入查詢字符串中,你打開自己的SQL注入攻擊的可能性。在這種情況下,這可能並不嚴肅,但避免這些問題是一個很好的習慣,因爲這很重要。 – Jules 2012-04-12 17:40:32