Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
在查询SQLite Android上使用替换字符操作函数时出错_Android_Sqlite - Fatal编程技术网

在查询SQLite Android上使用替换字符操作函数时出错

在查询SQLite Android上使用替换字符操作函数时出错,android,sqlite,Android,Sqlite,当我使用此键时,它会给我一个错误,但当我使用长度时,它工作正常。我希望android sqlite上允许这样做,因为这是最好的方式: 我只是试图删除将从数据库中选择的单词后面的空格 public ArrayList<String> getCorrectList() { // TODO Auto-generated method stub Cursor c = db.rawQuery("SELECT REPLACE(Level_1, ' ', '')

当我使用此键时,它会给我一个错误,但当我使用长度时,它工作正常。我希望android sqlite上允许这样做,因为这是最好的方式:

我只是试图删除将从数据库中选择的单词后面的空格

public ArrayList<String> getCorrectList() {
        // TODO Auto-generated method stub

        Cursor c = db.rawQuery("SELECT REPLACE(Level_1, ' ', '') FROM " + TABLE, null);

        ArrayList<String> resultsList = new ArrayList<String>();

        try {
            if (c != null) {
                if (c.moveToFirst()) {

                    do {
                        String levelData = c.getString(c
                                .getColumnIndex("Level_1"));

            resultsList.add("" + c.getColumnIndex("Level_1"));

                    } while (c.moveToNext());
                }
            }
        } catch (SQLiteException e) {

            Log.e("Database", "Cannot get List (" + e + ")");

        }

        Log.d("array", "List: " + resultsList);

        Collections.shuffle(resultsList);

        return resultsList;
    }
public ArrayList getCorrectList(){
//TODO自动生成的方法存根
游标c=db.rawQuery(“从“+表,null”中选择替换(级别1,,”);
ArrayList resultsList=新建ArrayList();
试一试{
如果(c!=null){
if(c.moveToFirst()){
做{
String levelData=c.getString(c
.getColumnIndex(“级别1”);
结果列表。添加(“+c.getColumnIndex(“级别1”));
}而(c.moveToNext());
}
}
}catch(sqlitee异常){
Log.e(“数据库”,“无法获取列表”(+e+));
}
Log.d(“数组”,“列表:”+resultsList);
集合.shuffle(resultsList);
返回结果列表;
}

这在SQLite3 shell中运行良好:

e$ sqlite3
SQLite version 3.7.14.1 2012-10-04 19:37:12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table t(a,b,c);
sqlite> select replace(a,' ', '') from t;
REPLACE
是SQLite3中的函数和命令。也许
db.rawQuery
正在解析查询,并被
REPLACE
弄糊涂了。试试这个:

db.rawQuery("select rtrim(replace(Level_1, ' ', '')) FROM " + TABLE, null);

错误是什么?