首页 > 解决方案 > 在 Android 数据库中出现此错误:android.database.sqlite.SQLiteException:靠近“+”:语法错误(代码 1)

问题描述

您好,我收到此错误:android.database.sqlite.SQLiteException: 接近“+”语法错误(代码 1),编译时:SELECT * FROM tbl_Individual_Donor_Registration WHERE BloodGroup = B+

这是我的表格元素代码:

public static final int DATABASE_VERSION = 3;
public static final String DATABASE_NAME = "BLOOD_PROJECT";
public static final String TABLE_NAME = "tbl_Individual_Donor_Registration";
public static final String TABLE_NAME_BLOOD_BANK = "tbl_Blood_Bank_Registration";
public static final String COL_1 = "Id";
public static final String COL_2 = "Name";
public static final String COL_3 = "Password";
public static final String COL_4 = "BloodGroup";
public static final String COL_5 = "BloodQuantity";
public static final String COL_6 = "MobileNo";

这是我的实际选择查询的代码:

    String select = "SELECT * FROM " + TABLE_NAME + " WHERE " + COL_4 + " = "+ final_blood_group; 

而 final_blood_group 是来自 Spinner 值,它来自用户的选择,我希望你能帮助我,谢谢。

标签: androiddatabaseandroid-database

解决方案


您需要在代码中更改一些小东西。这里的示例

正确的代码应该是这样的

   SELECT * FROM tbl_Individual_Donor_Registration WHERE BloodGroup = 'B+'//you need single quote in B+

所以你需要把单引号放在

final_blood_group="'B+'";

那么你的代码看起来像这样

SELECT * FROM tbl_Individual_Donor_Registration WHERE BloodGroup = 'B+'

如果你不放单,那么作为关键字工作。


推荐阅读