android sqlite语句 字符串类型自动转换导致查询失败

时间秒杀一切 提交于 2020-01-11 09:58:06

今天突然发现数据库语句查询失败,主要查询方式就两种。

前提:item1,projectName,type都为String 类型

 

1、

String sql = String.format("SELECT '%s' FROM ItemParas WHERE name ='%s' AND sampleType = '%s' ",item1,projectName,type);

Cursor c = db.rawQuery(sql,null);

2、

String sql =  "select ? from itemparas where name=? and sampleType=? ";

c = db.rawQuery(sql,new String[] { item1,projectName,type });

还是不行。又拿Navicat Premium 试了好几个版本,才发现是projetName出了问题。 但 Type也是String类型啊? 最后用转义字符解决了。。。。

String sql = String.format("SELECT  \"%s\" FROM ItemParas WHERE name =\"%s\" AND sampleType = \"%s\" ",item1,projectName,type);

Cursor c = db.rawQuery(sql,null);

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!