传递数组字符串gettestdata
问题描述:
我有一个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;
}
}
答
可以使用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 +"')";
我还没有测试过,但它应该工作。
谢谢Vipul。我对java.Can非常陌生,请告诉我一个简单的方法,在数组[words]上编写for循环。并相应地传递它。 – user2295369 2013-04-29 13:47:42
@ Vipul。它说mQuery.length不能解析为变量。 – user2295369 2013-04-29 14:47:53