2013-04-29 95 views
-1

我有一個sqlite3數據庫的兩列數據。我在我base.It word.How可以通過字的陣列的字符串效果很好數據執行查詢,以通過以下(字[I])來gettestdata到數據庫傳遞數組字符串gettestdata

public Cursor getTestData(word) 
{ 
    try 
    { 


     String sql ="SELECT suggest_text_2 FROm FTSdictionary WHERE suggest_text_1='"+word+"'"; 

     Log.v("Query",sql); 

     Cursor mCur = mDb.rawQuery(sql, null); 
     if (mCur!=null) 
     { 
      mCur.moveToNext(); 
     } 
     return mCur; 
    } 
    catch (SQLException mSQLException) 
    { 
     Log.e(TAG, "getTestData >>"+ mSQLException.toString()); 
     throw mSQLException; 
    } 
} 

回答

1

可以使用SQL查詢執行查詢像這樣:

String mQuery = ""; 
for (int i = 0; i < words.length; i++) { 
    mQuery.length() < 1 ? mQuery += "'" + words[i] + "'" : mQuery += ", '"+ words[i] + "'"; 
} 
String sql ="SELECT suggest_text_2 FROm FTSdictionary WHERE suggest_text_1 in ('"+ mQuery +"')"; 

我還沒有測試過,但它應該工作。

+0

謝謝Vipul。我對java.Can非常陌生,請告訴我一個簡單的方法,在數組[words]上編寫for循環。並相應地傳遞它。 – user2295369 2013-04-29 13:47:42

+0

@ Vipul。它說mQuery.length不能解析爲變量。 – user2295369 2013-04-29 14:47:53