java - Android = select column1 from table where column2 = column3 order by id desc
问题描述
如何解决这个问题呢
我正在尝试从表中获取最后一米,这是使用 id desc 的类似车号
如图所示
这是我的代码
String CarN = carNumber.getText().toString();
SQLiteDatabase dataBas = logDB.getReadableDatabase();
int active = 0;
String activeCar =String.valueOf(active);
Cursor cursor = dataBas.rawQuery("select "+CarLoadingToSaveUtils.NEW_METER_READING +" from "+
CarLoadingToSaveUtils.TABLE_CAR_LOADING_SAVE +" where "+CarLoadingToSaveUtils.CAR_NUMBER_LATTER+" = "+ CarN + " order by "+
LogDB.KEY_ID +" desc ",new String[]{activeUser});
if (cursor.moveToFirst()) {
int index6 = cursor.getColumnIndex(CarLoadingToSaveUtils.CAR_NUMBER_LATTER);
String Num = cursor.getString(index6);
oldMeteReading.setText(Num);
} else {
oldMeteReading.setText("0");
}
当我运行代码时出现此错误
android.database.sqlite.SQLiteException: near "1234": syntax error (code 1 SQLITE_ERROR 1 ): ,编译时:从 carLoadingSave 中选择 newMeteReading where carNumber =? 1234 H order by id desc
解决方案
CarN 值(?1234 H)需要在引号之间
替换这个:
CarLoadingToSaveUtils.TABLE_CAR_LOADING_SAVE +" where "+CarLoadingToSaveUtils.CAR_NUMBER_LATTER+" = "+ CarN +" order by "+
by :
CarLoadingToSaveUtils.TABLE_CAR_LOADING_SAVE +" where "+CarLoadingToSaveUtils.CAR_NUMBER_LATTER+" = '"+ CarN + "' order by "+
推荐阅读
- html - 悬停关键帧动画
- javascript - 提交或单击时的 Redux 表单验证直到用户键入后才验证
- regex - 使用 REGEX REPLACE 按第一段对 URL 路径进行分组
- python-3.x - 泰坦尼克号示例 R 与 Python:相反的决策树
- python - @staticmethod 返回值
- java - Android 地理编码对某些邮政编码始终有效,而对其他邮政编码始终失败。所有有效的邮政编码
- java - android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class fragment
- influxdb - Kapacitor:将子集复制到新测量
- autohotkey - 如何检查剪贴板是否等于预定数字或AHK中的几个数字?
- ibm-midrange - as400 中 wrkqry 中的 concat 运算符