Android从rawQuery获取数据到另一种形式

时间:2011-05-14 07:58:16

标签: java android sqlite

我希望从游标中获取IdEmployeeDetails表单,但我没有得到任何结果。这是我的代码:

public class EmployeeList extends ListActivity {
    protected EditText searchText;
    protected SQLiteDatabase db;
    protected Cursor cursor;
    protected ListAdapter adapter;
/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        db = (new DatabaseHelper(this)).getWritableDatabase();
        searchText = (EditText) findViewById (R.id.searchText);
    }
    public void search(View view) {
// || is the concatenation operation in SQLite
        cursor = db.rawQuery("SELECT _id FROM employee WHERE firstName=?", 
            new String[]{searchText.getText().toString()});
        Intent intent = new Intent(this, EmployeeDetails.class);
        long id = cursor.getLong(cursor.getColumnIndex("_id"));
        intent.putExtra("EMPLOYEE_ID", id);
        startActivity(intent);
    }
}

2 个答案:

答案 0 :(得分:0)

要从光标对象获取记录值,您需要迭代它并从中检索数据......

if(c.getCount()>0){ if (c.moveToFirst()){  c.getLong(0); }}

其中c是您的游标对象...还要检查游标是否为空...

答案 1 :(得分:0)

如果firstName是String,请使用firstName,如'XYZ'