2010-10-10 38 views
2

我想從我的應用程序中的數據存在的SQLite數據庫中的一個表中編寫選擇查詢。如何爲Android應用程序編寫SQLite的查詢?

這是SQL.table具有這些列 - 編號(整數),START_TIME(整數),類別由我想在1242中所示的值,我有在結合方式(TEXT)

select category from tuuserid_pref where id = (select max(id) from tuuserid_pref where start_time < '1242');整型變量。

我已經寫了選擇和插入和更新,而無需綁定參數和他們的工作使用db.execSQL和db.rawQuery功能,但只是不綁定的參數了。

任何幫助,非常感謝。

回答

2

你需要修改你的SELECT語句,像這樣:

select category from tuuserid_pref where id = 
(select max(id) from tuuserid_pref where start_time < ?); 

然後使用以下rawQuery電話:

rawQuery(String sql, String[] selectionArgs) 

傳遞您的變量進入第二個參數包裹在一個String [],這應該給你有如下聲明:

db.rawQuery(sqlStatement, new String[] { String.valueOf(myInt) }); 

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

+0

在這種情況下,db.execSQL函數調用是否返回遊標對象? – Aakash 2010-10-10 20:55:29

+0

對不起Aakash,在這種情況下,你想調用rawQuery(String sql,String [] selectionArgs),它將返回一個Cursor對象。我會更新我的答案以反映這一變化。 – McStretch 2010-10-10 21:11:33

+0

我這樣做,和它的作品... thanks.I用來代替rawQyery – Aakash 2010-10-10 22:00:37

相關問題