1

我正在开发 bmi 计算器应用程序,在这个应用程序中,我将人员的详细信息存储到 sqlite 数据库中。但问题是当我试图使用活动中的搜索按钮获取任何人的记录时。 .帮我更正活动中的代码

在数据库中我使用了以下代码..

public Cursor getContact(String candidate) throws SQLException

{

    //db.
Cursor  mCursor =db.query(true,TABLE_NAME,new String[]{CANDIDATE_NAME,CANDIDATE_FATHER,CANDIDATE_HEIGHT,CANDIDATE_WEIGHT,CANDIDATE_BMI},CANDIDATE_NAME+"=?", null, null, null, null, null);

if (mCursor != null) {
    mCursor.moveToFirst();
   }
return mCursor;
}   
}

在检索记录的活动中,我使用了以下代码..

try{
dbadapter.open();
EditText et=(EditText)findViewById(R.id.et);
st=et.getEditableText().toString();
//int n=Integer.parseInt(st);
Cursor c=dbadapter.getContact(st);

    //c.moveToFirst();
//TextView tv1=(TextView)findViewById(R.id.tv1);
Toast.makeText(getApplicationContext(),"Name : "+c.getString(0)+"\n" +"Father's Name : "+c.getString(1)+"\n"+"Height : "+c.getString(2)+"\n"+"Weight : "+c.getString(3)+"\n"+"BMI : "+c.getString(4),5000).show();
    //Toast.makeText(getApplicationContext(), "searching", 5000).show();


dbadapter.close();

活动中的上述代码不起作用请花点时间更正代码并提前感谢..

4

1 回答 1

0

您似乎缺少 sqlite 查询的参数。在线上:

Cursor mCursor =db.query(true,TABLE_NAME,new String[]{CANDIDATE_NAME,CANDIDATE_FATHER,CANDIDATE_HEIGHT,CANDIDATE_WEIGHT,CANDIDATE_BMI},CANDIDATE_NAME+"=?", null, null, null, null, null);

如果方法参数是您的候选名称null,则替换第一个。new String[]{candidate)candidate

于 2014-02-01T14:25:55.433 回答