Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android SQLite选择查询中的撇号_Android_Sqlite - Fatal编程技术网

Android SQLite选择查询中的撇号

Android SQLite选择查询中的撇号,android,sqlite,Android,Sqlite,我对SQLite和一些定制SQL有问题: public Cursor getExistingSpeciesDetails(String sub_id, String english_name) { Cursor c = mDb.rawQuery( "SELECT mobileobs.how_many, mobileobs.comment, mobileobs.sensitive, " + "mobileobs.breedin

我对SQLite和一些定制SQL有问题:

public Cursor getExistingSpeciesDetails(String sub_id, String english_name) {
    Cursor c = mDb.rawQuery(
            "SELECT mobileobs.how_many, mobileobs.comment, mobileobs.sensitive, "
                    + "mobileobs.breeding_evidence from mobileobs "
                    + "WHERE mobileobs.sub_id = '" + sub_id
                    + "' and mobileobs.english_name = '" + english_name
                    + "'", null);
    return c;
}
我的问题是英文名称中的一个撇号(Cetti's Warbler)导致SQL中出现错误(强制关闭我的Android应用程序)。有没有办法避开这类子句中的撇号


为此,您需要使用SQLIte的参数注入。例如:

Cursor c = mDb.rawQuery(
            "SELECT mobileobs.how_many, mobileobs.comment, mobileobs.sensitive, "
             + "mobileobs.breeding_evidence from mobileobs "
             + "WHERE mobileobs.sub_id = ? AND mobileobs.english_name = ?"
             , new String[]{sub_id, english_name});
或按以下方式更改输入参数:

Cetti''s Warbler

为此,您需要使用SQLIte的参数注入。例如:

Cursor c = mDb.rawQuery(
            "SELECT mobileobs.how_many, mobileobs.comment, mobileobs.sensitive, "
             + "mobileobs.breeding_evidence from mobileobs "
             + "WHERE mobileobs.sub_id = ? AND mobileobs.english_name = ?"
             , new String[]{sub_id, english_name});
或按以下方式更改输入参数:

Cetti''s Warbler

尝试使用
wherergs
,将查询中的
null
替换为
新字符串[]{sub\u id,english\u name}
还将复杂的
删除为类似
的内容,其中id=?和name=?
尝试使用
wherergs
,将查询中的
null
替换为
新字符串[]{sub\u id,english\u name}
还将复杂的
删除为类似
的内容,其中id=?和name=?
谢谢-将尝试一下。谢谢-将尝试一下。