2017-03-06 53 views
-3

我面對的錯誤是android.database.sqlite.SQLiteException:近 「答案」:語法錯誤(代碼1):在編譯:SELECT * FROM聯繫人那裏ANS答案

android.database .sqlite.SQLiteException:接近「答案」:語法錯誤 (代碼1),編譯時:SELECT * from聯繫人答案。

public Cursor getData() { 
     SQLiteDatabase db = this.getReadableDatabase(); 
     Cursor res = db.rawQuery("SELECT * from contacts where ans " + CONTACTS_COLUMN_ANS, null); 
     return res; 
+0

目前尚不清楚您想從數據庫中選擇什麼。無論如何,你的SQL查詢無效 –

回答

1

如果你的功能是正確的,然後整頓查詢。缺少設置=的標誌。

您可以

Cursor res = db.rawQuery("SELECT * FROM "+ contacts + " WHERE " + ans + " = '"+ CONTACTS_COLUMN_ANS +"'" , null); 
+1

@Rotwang okay sir –

0

試試這個,

public Cursor getData() 
    { 
    SQLiteDatabase db = this.getReadableDatabase(); 
    Cursor res = db.rawQuery("SELECT * FROM "+ contacts + " WHERE " + ans + " = '"+ CONTACTS_COLUMN_ANS +"'" , null); 
    return res; 
    } 
0

更新與此

public Cursor getData() { 
    SQLiteDatabase db = this.getReadableDatabase(); 
    Cursor res = db.rawQuery("SELECT * from contacts where ans='" +CONTACTS_COLUMN_ANS + "'", null); 
    return res; 
} 
1

您的代碼,你可以使用像..

String[] params = new String[]{ contact_no }; 
Cursor c = db.rawQuery("SELECT * FROM contacts WHERE ans = ?", 
        params); 
+0

這是避免使用字符串數組的int和text值出錯的最佳選擇之一 –

相關問題