我想使用select查詢從表中檢索數據。我發現,rawQuery(query, selectionArgs)
方法的SQLiteDatabase
類檢索數據。但我不知道如何將query
和selectionArgs
傳遞給rawQuery
方法? rawQuery的rawQuery(query,selectionArgs)
回答
rawQuery("SELECT id, name FROM people WHERE name = ? AND id = ?", new String[] {"David", "2"});
您傳遞數目相等元素的字符串數組,你有「?」
Thx,應該更喜歡這個 –
'rawQuery(「SELECT id,name FROM people WHERE?=?」,new String [] {「column_name」,「David」});',這是一個validQuery嗎? – theapache64
@ theapache64它不是一個有效的查詢。 '?'僅適用於值。 – BMB
一個例子 - db.rawQuery("select * from table where column = ?",new String[]{"data"});
什麼是新的串[] { 「數據」}?你能否給出上述說明的解釋。提前致謝。 –
http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#rawQuery%28java.lang.String,%20java.lang.String[]%29 – Tarun
看下面的代碼它可以幫助你。
String q = "SELECT * FROM customer";
Cursor mCursor = mDb.rawQuery(q, null);
或
String q = "SELECT * FROM customer WHERE _id = " + customerDbId ;
Cursor mCursor = mDb.rawQuery(q, null);
也許這可以幫助你
Cursor c = db.rawQuery("query",null);
int id[] = new int[c.getCount()];
int i = 0;
if (c.getCount() > 0)
{
c.moveToFirst();
do {
id[i] = c.getInt(c.getColumnIndex("field_name"));
i++;
} while (c.moveToNext());
c.close();
}
對於問題@AgentKnopf這是完美的答案 –
String mQuery = "SELECT Name,Family From tblName";
Cursor mCur = db.rawQuery(mQuery, new String[]{});
mCur.moveToFirst();
while (!mCur.isAfterLast()) {
String name= mCur.getString(mCur.getColumnIndex("Name"));
String family= mCur.getString(mCur.getColumnIndex("Family"));
mCur.moveToNext();
}
姓名和家庭是你的結果
爲了完整和正確的資源管理:
ICursor cursor = null;
try
{
cursor = db.RawQuery("SELECT * FROM " + RECORDS_TABLE + " WHERE " + RECORD_ID + "=?", new String[] { id + "" });
if (cursor.Count > 0)
{
cursor.MoveToFirst();
}
return GetRecordFromCursor(cursor); // Copy cursor props to custom obj
}
finally // IMPORTANT !!! Ensure cursor is not left hanging around ...
{
if(cursor != null)
cursor.Close();
}
如果您的SQL查詢是這樣的
SELECT name,roll FROM student WHERE name='Amit' AND roll='7'
然後rawQuery將
String query="SELECT id, name FROM people WHERE name = ? AND roll = ?";
String[] selectionArgs = {"Amit","7"}
db.rawQuery(query, selectionArgs);
- 1. SQLite rawQuery selectionArgs和Integers字段
- 2. SQLite的rawquery selectionArgs兩個不工作
- 3. 如何使用getContentResolver()。query for Multiple selectionargs?
- 4. Android的 - 傳遞字段名作爲selectionArgs兩個到rawQuery
- 5. 如何使用query()代替rawQuery()以降序顯示列表? android
- 6. rawQuery - CursorAdapter
- 7. SQLite rawquery
- 8. 如何與LIKE selectionArgs兩個
- 9. 在SQLiteDatabase.query()中使用String [] selectionArgs
- 10. sqlite中query()和rawQuery()之間有什麼區別,哪一個更有效,goog
- 11. 如何使用rawQuery()而不是query()來編寫此請求? (代碼裏面)
- 12. 錯誤rawquery:近「」
- 13. SQL rawQuery if if
- 14. CursorLoader與rawQuery
- 15. rawQuery Vs. database.query
- 16. SQLite的rawQuery錯誤
- 17. rawQuery()語法錯誤
- 18. rawquery SQL問題Android
- 19. Android的rawQuery出錯()
- 20. 用動態selectionArgs查詢android sqlite
- 21. selectionArgs錯誤表示列不存在
- 22. 使用selectionArgs兩個並不在查詢
- 23. 蛋糕2.X從rawQuery
- 24. 無法使用SELECT在RAWQUERY
- 25. Android SQLite的rawQuery()方法
- 26. NullPointerException異常時調用rawquery()
- 27. 如何設置Unlimited SQL rawQuery?
- 28. .rawQuery排序不起作用
- 29. 的SQLite rawQuery與多個WHERE
- 30. rawQuery on「count(*)」return no row
[Android開發者網站(http://developer.android.com/reference/android/database /sqlite/SQLiteDatabase.html#rawQuery%28java.lang.String,%20java.lang.String[]%29)Android開發人員是所有這些小型查詢的最佳來源,是所有這些小型查詢的最佳來源 – Tarun