我开发一个简单的应用程序,在数据库中插入和检索中插入的数据安卓:SQLite的搜索
我创建的数据库,我可以看到所有的行插入...我要搜索使用的行名称列
我有一个错误,我不知道哪里是错误行
下面是我的代码来创建数据库。
sampleDB = this.openOrCreateDatabase(SAMPLE_DB_NAME, MODE_PRIVATE, null);
sampleDB.execSQL("CREATE TABLE IF NOT EXISTS "+SAMPLE_TABLE_NAME +
" (Id INT(50), Name VARCHAR," +
" Price INT(50), Qty INT(50), Discount INT(50), Category INT(10));");
和这里的数据库
Button saveButton = (Button) findViewById(R.id.search_button);
saveButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
String searchStr = search.getText().toString();
Cursor c = sampleDB.rawQuery("SELECT Name, Price FROM "+SAMPLE_TABLE_NAME+" WHERE Name like '"+searchStr+"'", null);
if (c != null) {
if (c.moveToFirst()) {
do {
String name = c.getString(c.getColumnIndex("Name"));
int cat = c.getInt(c.getColumnIndex("Category"));
results.add("" + name + ",Age: " + cat);
Log.v("Fname", name);
Log.v("Cat", cat+"");
}while (c.moveToNext());
}
}
}
});
搜索明知字符串searchstr有我想要在数据库
这里搜索名字是我有
错误代码Bad request for field slot 0,-1. numRows = 18, numColumns = 2
FATAL EXCEPTION: main
java.lang.IllegalStateException: get field slot from row 0 col -1 failed
请帮忙吗?
非常感谢你......愚蠢的错误:) –