如何搜索int而不是字符串,sqlite数据库,android

时间:2013-07-05 05:25:51

标签: android sqlite

我想在数据库表中搜索具有int值的行,而不是字符串值,但是当这样做时,我得到一个错误。所以我希望我能做到这一点,但这是不可能的:

  updateRow(int titleCode, int questionCode, int inspectionResult){

所以我坚持这个,

  updateRow(String titleCode, String questionCode, int inspectionResult){

我如何使用这样的选择参数;

 new String[]{titleCode, questionCode}

如果这些变量是int / integer而不是字符串,那么搜索titleCode和questionCode?

因为我无法将选择args数组从String类型更改为int类型但我想在数据库表中搜索int值

         public void updateRow(String titleCode, String questionCode, int inspectionResult){

             ContentValues contentValues = new ContentValues();
             String selection = "INSPECTION_PLACE_CODE = ? AND INSPECTION_ITEM_CODE = ?";
             contentValues.put(INSPECTION_RESULT_JUDGEMENT, inspectionResult);
             sqLiteDatabase.update(DETAILS_TRAN_SMALL_INSPECTION_RESULTS, contentValues, selection,
             new String[]{titleCode, questionCode});

         }

1 个答案:

答案 0 :(得分:1)

https://www.sqlite.org/datatype3.html

根据第3.3节,比较(包括等式检查)受类型亲和性的影响。您可以安全地在SQLite中将int值作为字符串进行测试,因为数据库驱动程序会在比较之前将String自动转换为int。