Java 如何在Android Studio中检查我的WHERE查询是否正确
我正在尝试我的rawQuery,但我的应用程序不断崩溃,运行应用程序时没有出现错误 我的查询在SQLite的DB浏览器上运行良好 我的数据库助手:Java 如何在Android Studio中检查我的WHERE查询是否正确,java,database,sqlite,where,Java,Database,Sqlite,Where,我正在尝试我的rawQuery,但我的应用程序不断崩溃,运行应用程序时没有出现错误 我的查询在SQLite的DB浏览器上运行良好 我的数据库助手: public Cursor setData(String id){ SQLiteDatabase db = this.getReadableDatabase(); String query = "SELECT * FROM " + TABLE_NAME + " WHERE " + NUMBER + " = " + id
public Cursor setData(String id){
SQLiteDatabase db = this.getReadableDatabase();
String query = "SELECT * FROM " + TABLE_NAME + " WHERE " + NUMBER + " = " + id;
Cursor cursor = db.rawQuery(query, null);
return cursor;
}
我的主要活动:
public void setData(){
fetchedData = getIntent().getExtras().get("sentData").toString();
Cursor data = myDb.setData(fetchedData);
editTextnumber.setText(data.getString(1));
}
我也试过:
Cursor cursor = db.rawQuery("SELECT * FROM " +TABLE_NAME+ " WHERE " + NUMBER + "= ?", new String[] {id});
当我设置我的获取数据时,它是完全好的。非常感谢您的帮助。有什么问题吗?你有什么错误吗?谢谢你的注意,我已经解决了。在设置文本之前,我应该先使用if(data.moveToFirst()),有什么问题吗?你有什么错误吗?谢谢你的注意,我已经解决了。在设置文本之前,我应该先使用if(data.moveToFirst())。
public void setData(){
fetchedData = getIntent().getExtras().get("sentData").toString();
Cursor data = myDb.setData(fetchedData);
if(data.moveToFirst()) {
editTextnumber.setText(data.getString(1));
editTextname.setText(data.getString(2));
editTextaddress.setText(data.getString(5));
editTextnotes.setText(data.getString(6));
}
}