我想从数据库中检索名称。但我总是收到错误:
字符串名称=helper.getProductNameT(cur);
public View getView(int position, View convertView, ViewGroup parent) {
View tmpView = super.getView(position, convertView, parent);
Log.i(CN, "getView:" + position);
final CheckBox cBox = (CheckBox) tmpView.findViewById(R.id.checkD);
Item tag = (Item) cBox.getTag();
cBox.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Cursor cur = null;
String name2;
Item tag = (Item) v.getTag();
if (tag == null)
Log.i(CN, "checkbox clicked no tag");
else
//Cursor c=helper.getProductDirect(String.valueOf(tag.id));
Log.i(CN, "checkbox clicked tag=" + tag.id);
helper.open();
cur=helper.getProductDirect(String.valueOf(tag.id));
String name=helper.getProductNameT(cur);
try{
}catch(Exception e){
Log.e("error", e.toString());
}
//helper.insertProduct3(list,2, "name");
if (cBox.isChecked()) {
Log.i(CN, " Checked!");
// do some operations here
helper.insertProduct3(list,2, "go");
} else {
Log.i(CN, "NOT Checked!");
// do some operations here
//helper.updateStatusUnCheck(tag.id);
}
// notifyDataSetChanged();
Intent start = new Intent(AddProductDirect.this,
productClass.class);
// start.putExtra(ID_EXTRA, String.valueOf(list));
//startActivity(start);
}
});
return tmpView;
}
数据库Java语言
public Cursor getProductDirect(String id) {
String[] arg={id};
// TODO Auto-generated method stub
return (database.rawQuery("SELECT " + SQLiteHelper.product_id
+ " as _id," + SQLiteHelper.productBar + ","
+ SQLiteHelper.productName + " ," + SQLiteHelper.productDesp
+ "," + SQLiteHelper.productQtty + ","
+ SQLiteHelper.productPrice + ","
+ SQLiteHelper.productTotalPrice + ","
+ SQLiteHelper.product_FId + "," + SQLiteHelper.product_Image
+ "," + SQLiteHelper.product_ShoppingF + ","
+ SQLiteHelper.product_Status + " FROM "
+ SQLiteHelper.productTable + " WHERE "+SQLiteHelper.product_id+"=?",arg));
}
public String getProductNameT(Cursor c) {
// TODO Auto-generated method stub
return ((c.getString(2)));
}
它不断返回错误
android.database.CursorIndexOutOfBoundsException:请求索引-1,大小为1,字符串名称=helper.getProductNameT(cur);
有人知道我的编码哪里出错了吗?
您忘记在从返回的
游标
上调用moveToFirst()
database.raw查询
cur=helper.getProductDirect(....);
if(cur.moveToFirst()){
/*
String name=helper.getProductNameT(cur);
... rest code goes here ...
*/
}
关于我的上一个问题,我想从创建的sqlite数据库中检索ID,将其作为Intent putExtra()中的数据传递,以便将其用作PendingContent的ID。getActivity()。目前,我正在使用queryNumEntries为从我的DatabaseManager中的以下代码添加到数据库中的每个提醒设置id。类别: 并在AddActivity中调用它。班 在创建条目时,除了尝试此操作
所以我根据YouTube上的教程创建了一个房间数据库。我有两个栏day and likes,每个栏都有int.目前,我已经用三行数据手动填充了数据库。 下面是手动填充数据库的代码: 在我的Dao类中,我当前有Insert、Update、deleteAll和getall...方法。这里是道: } 现在,我要从Room数据库中检索基于当天的数据。所以我想要第6天的likes数,它是1。我想检索数据并将
我试图显示一个零件的"loc",如果它的零件号我给。以下是数据结构的样子: 活动代码: getLoc是Product类的getter函数,它返回给定curP对应的“loc”。curP部分表示子值。 逻辑对我来说似乎是正确的,但我没有得到输出。我哪里出了问题?
我是在Android应用程序中使用SQL的新手,并且我在更新使用listView创建的表时遇到了一些麻烦。我设法从listView中更新了一个元素,但它不是正确的元素,它总是列表中的第一个元素发生了变化。 我制作了一个只有一列的表(稍后我将添加更多的两列),下面是我如何构建它: TaskContract_Faltas.java TaskDbHelper_Faltas Faltas.java 我使用
我正在两个标记之间画一条路线,我想保存那条路线。为此,我将包含lat和lng的ArrayList保存在Firebase数据库中。但我在取回航路点时遇到了问题。我是这样插入的: 在检索数据时,我尝试执行以下操作:
问题内容: 我尝试从资产目录复制SQLite数据库,以便以后访问。但是我做不到! DatabaseHelper很简单: 尝试了一切!我尝试玩扩展!但是我仍然收到一个错误:复制数据库时出错: 我检查了模拟器,我的文件在那里,所以我应该可以写它!请任何帮助!真让我发疯! UPD 我试图将其放在SD卡上,并且可以正常工作。但仍然无法理解为什么我无法将其写入应用程序数据文件夹。 问题答案: 我使用此助手,