java - 如何在 Android Studio 中检查我的 WHERE 查询是否正确
问题描述
我正在尝试我的 rawQuery,但我的应用程序不断崩溃,运行应用程序时没有错误。
我的查询在 SQLite 的数据库浏览器上运行良好。
我的数据库助手:
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});
当我 setText 我的 fetchedData 完全没问题。任何帮助将不胜感激。
解决方案
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));
}
}
推荐阅读
- angular - 从 finalize() 运算符发出另一个 Observable 是一种好习惯吗?
- python - 我可以用一个循环来解决这个问题,但为什么没有用这个递归函数显示数组的所有组合?
- spring - SCDF - 在不同的模式中创建元数据表并使用不同的模式处理批处理作业
- javascript - 将数组从平面一维转换为树,如 javascript/lodash
- reactjs - 组件或 mapStateToProps 中的逻辑
- python - Plotly:如何在随机生成的时间序列上实现 X 轴上的日期时间范围
- javascript - 使用 innerwidth 排版由 p5.js 函数组成的字体
- javascript - 在 savePost 运行之前更新 Gutenberg 块内容
- sql - SQL 批量插入 - ROWTERMINATOR 'Ox0A' 与 '\r\n'
- c++ - 如何为 C++ 2D Snake 游戏生成随机水果