更新在Sqlite中不起作用

时间:2012-10-10 07:20:57

标签: android sqlite sql-update

我只需更新SQLite数据库表中的行,我正在使用更新行的更新查询,但它不起作用也不会抛出任何错误。

我的代码:

database.rawQuery(" UPDATE content SET  url2g = replace(url2g, '"
                + current_ip + "', '" + ip + "');", null);

请建议我哪里错了。Thanks

3 个答案:

答案 0 :(得分:1)

试试这个:

 public void updatemember(String id,String password,String status) {
        // TODO Auto-generated method stub


        ContentValues dataToInsert = new ContentValues();
        dataToInsert.put("status", status);
        dataToInsert.put("password", password);

        String where= " id = " + "\"" + id + "\"";

        try {

            db.update(TABLE_NAME, dataToInsert, where, null);

        } catch (Exception e) {


            String error = e.getMessage().toString();
        }
    }

答案 1 :(得分:1)

Documentation说:

public void execSQL (String sql)  

执行一个非SELECT的SQL语句或任何其他返回数据的SQL语句。

因此,您需要使用execSQL()进行数据修改,例如:

•INSERT
•UPDATE
•DELETE

rawQuery(String sql, String[] selectionArgs)

运行提供的SQL并在结果集上返回一个Cursor。

rawQuery()应该用于SELECT目的,它会为SELECT查询返回Cursor。

答案 2 :(得分:-1)

最后,我使用以下execSQL

完成此操作
database.execSQL("UPDATE content SET  url2g = replace(url2g, '"
                + current_ip + "', '" + ip + "');");