如何从外部数据库中检索行并在文本视图中显示它们? 我尝试了一些代码,但应用程序停止了。
在我的数据库助手中,我添加了该代码:
public String[] getData(String l) {
// TODO Auto-generated method stub
String[] columns = new String[] { DB_ID, DB_name, DB_desc };
// FILTERS DEPENDING ON THE CATEGORY TYPE PASSED IN THE PARAMETER
Cursor c = mDataBase.rawQuery("SELECT _id,name,description FROM facilities WHERE name='" + l + "'", null);
String[] result = new String[] { null, null, null, null, null };
int iId = c.getColumnIndex(DB_ID);
int iName = c.getColumnIndex(DB_name);
int iDesc = c.getColumnIndex(DB_desc);
c.moveToFirst();
result[0] = c.getString(iId);
result[1] = c.getString(iName);
result[2] = c.getString(iDesc);
return result;
}
这个代码在我的活动中,我希望在textview中显示字符串:
for(int i=0;i<4;i++){
// dbhelper.open();
String[] data =dbhelper.getData(namee);
// dbhelper.close();
txt.append("\n"+data[3]+"\n");}
}
这是我试过的另一个代码,来自这个网址: Return all data from a SQLite DB into two columns in Android
答案 0 :(得分:0)
您可以发布LogCat条目吗? 这条线做了什么?
String[] result=new String[]{null,null,null,null,null};
尝试
String[] result = new String[5];
代替;
答案 1 :(得分:0)
我在我的一个应用程序中使用了这个......这可能有所帮助。
我在主要活动中声明了以下内容
DatabaseHelper myDbHelper = new DatabaseHelper(this);
.
.
try {
myDbHelper.createDataBase();
}
.
.
.
db = myDbHelper.getWritableDatabase();// or db = myDbHelper.getReadableDatabase();
.
.
.
//In another function
Cursor c = db.rawQuery("Whatever you want to query");
String[] s=new String[]{"The fields(columns) you want queried and used in textbox"};