在android studio上的SQLITE中使用Like语句

我有一个包含汽车信息的 SQLite 数据库。我想出售 BMW 品牌的汽车。我有这样的声明:

String selectQuery = "SELECT  * FROM " +Note.TABLE_NAME+ " where " + "BRAND" + " like "+ "BMW";

应用程序崩溃并日志显示:

no such column: BMW (code 1): , while compiling: SELECT  * FROM adds where BRAND like BMW

当我使用这个应用程序时,该应用程序可以运行:

 String selectQuery = "SELECT  * FROM " +Note.TABLE_NAME+ " where " + "AGE" + " like "+ "10";

之后如何将 Like 与字符串一起使用?


幕布斯6054654
浏览 197回答 2
2回答

元芳怎么了

您需要用单引号将要检索的值引起来。试试这个:String selectQuery = "SELECT  * FROM " +Note.TABLE_NAME+ " where " + "BRAND" + " like 'BMW'";或者,您不需要将查询的每个单词放在各自的引号中。你可以只使用:String selectQuery = "SELECT  * FROM " +Note.TABLE_NAME+ " where BRAND like 'BMW'";

森林海

对于声明:SELECT  * FROM tablename where BRAND like BMWSQLite 将其视为BMW列名(当然不存在),因此代码失败。它应该是:SELECT  * FROM tablename where BRAND like 'BMW'但对于声明:SELECT  * FROM tablename where AGE like 10SQLite 不将其视为10列名,因为它是隐式转换为TEXT:的文字值'10',并且代码可以正常运行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java