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
Android SQLite-更新不工作,但db.Update返回1_Android_Sqlite - Fatal编程技术网

Android SQLite-更新不工作,但db.Update返回1

Android SQLite-更新不工作,但db.Update返回1,android,sqlite,Android,Sqlite,好的,这是另一个谜题-所以基本上尝试更新记录-它失败了 但是db.update方法返回1表示成功 表SQL为: public String getSQL() { return "CREATE TABLE IF NOT EXISTS transactions ( " + "transactionid INTEGER PRIMARY KEY AUTOINCREMENT, " + "accountid INTEGER, "+

好的,这是另一个谜题-所以基本上尝试更新记录-它失败了

但是db.update方法返回1表示成功

表SQL为:

public String getSQL() {
        return "CREATE TABLE IF NOT EXISTS transactions ( " +
            "transactionid INTEGER PRIMARY KEY AUTOINCREMENT, " +
            "accountid INTEGER, "+
            "amount REAL, " +
            "transactiontype INTEGER, " +
            "checknumber TEXT, " +
            "checkdate TEXT, " +
            "cleared INTEGER," +
            "notes TEXT," +
            "categoryid INTEGER)";
    }
使用以下方法提供更新的值。我已经确定那个记录确实存在

dbh.updateRecord(values, "transactions", "transactionid", Integer.toString(selTrans.getTransactionID()) );
其中updateRecord方法定义为:

public void updateRecord(ContentValues values, String tableName, String pkName, String pkValue) {
        SQLiteDatabase db=null; 

        try {
            db = this.getWritableDatabase();
            int ret = db.update(tableName, values,pkName + " =?", new String[] {pkValue} );
            Log.v("jv", "Update Record is : " + ret);

        } catch(Exception e) { Log.v("jv", "Updating Record: " + e.toString());  }
    }
打印时更新记录为:1,表示更新操作成功

但在检索事务值时=>未反映新值,表示没有更新

我试过以下几件事:

-1使用SQL格式 -2将String.valueOf用于PKValue -3使用beingTransaction/transactioNSuccessful/endTransaction

似乎都不管用


任何帮助都将不胜感激

你有没有想到这一点?我遇到了完全相同的问题。你解决了吗?