2012-10-11 68 views
0

在網絡搜索3天后嘗試不同的東西我是我的知識的結束。 我想通過光標從Android-SQLitedatabase獲取數據。使用此SQLCode創建數據庫:在成功完成SQLite數據庫查詢後,Android光標保持空白

create table Passwort(「ref text primary key,pw text)」;

的Buggcode是這樣的:

公共字符串俗塵(字符串refe){

String antwort = ""; 
    open(); 
    try { 
     String rawQuery = "Select * FROM Passwort WHERE ref LIKE \"" + refe 
       + "\""; 
     // Cursor c= db.query("Passwort", null, DBspalten[0]+"= '"+refe+"'", 
     // null, null, null, null); 
     Cursor c = db.rawQuery(rawQuery, null); 
     System.out.println(c.moveToFirst()); 
     // normaly the "antwort" would be the second field of the Cursors first entry 
     // as told, the cursors is always empty 
     //antwort = ""; 
     System.out.println("testausgabe:" + " " + c.getCount()); 
    } catch (SQLException e) { 
     System.out.println("anderer Fehler"); 
    } 
    return antwort; 
} 

我經由全成嵌件聲明插入REF = 「測試」 一個條目PW = 「QqjMs740Mg」 這些數據在數據庫中是確定的,我通過數據庫中的Eclipse插件找到它。 那麼,我的光標有什麼問題,激活System.out.println-statment總是提供false,這意味着光標中沒有數據。

+0

我用於測試的版本是API-10,因爲我自己的智能手機有點老舊 – Aeglasin

回答

0

試試這個:

String rawQuery = "Select * FROM Passwort WHERE ref LIKE '" + refe + "'"; 

我只是替換單引號的雙引號。所以sql查詢將是:

SELECT * FROM Passwort WHERE ref LIKE 'your_refe_value' 

讓我知道它是否工作。

+0

我嘗試過之前以相同的結果嘗試過,同時我發現了一個解決方案,但是這個有一個很大的缺點:我只是將模擬器的API級別從10更改爲14,並且它可以工作,所以也許它是級別10下的實現的一般問題,我記得我也有選擇befor的問題,當時Statment確實提供了Data,但是沒有所有詢問數據。 – Aeglasin