Android SQLite 通配符查询找不到参数问题
2024-08-24 23:31:46
使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时
SQLiteDatabase db = dbHelper.getReadableDatabase();
cursor = db.query(null, "name like '%?'", new String[] { name }, null, null, null, null);
将会抛出下面的异常
android.database.sqlite.SQLiteException: no such column: name (code 1): , while compiling: SELECT * FROM Tick WHERE name like '%?'
解决方法是,把通配符放到whereArgs字符串中,就是采用如下的方式:
cursor = db.query(null, "name like ?", new String[] { "'%"+name+"'" }, null, null, null, null);
最新文章
- 【腾讯优测干货分享】如何降低App的待机内存(四)——进阶:内存原理
- 二级路由器设置为何要关闭DHCP服务
- Activity 跳转动画 全局定义
- 【17】以独立语句将newed对象置入智能指针
- Maven快速搭建GUI项目
- 【洛谷2055】【CJOJ2487】【ZJOI2009】 假期的宿舍
- 车牌定位与畸变校正(python3.7,opencv4.0)
- 图像检索(3):BoW实现
- Day9 轨道角动量
- python对mysql数据库的一些常用操作
- input 设置 width:100% 和padding后宽度超出父节点
- VS Code折腾记 - (2) 快捷键大全,没有更全
- hihoCoder.1509.异或排序(位运算 思路)
- Android MediaCodec的数据处理方式分析
- Python中文语料批量预处理手记
- 使用openbabel进行小分子底物构象搜索
- Nginx技术研究系列6-配置详解
- match
- J2EE开发时的包命名规则,养成良好的开发习惯
- Android NDK学习(4)使用cygwin生成.so库文件