gpt4 book ai didi

android - 在 Android 上使用 SQLite 时,我必须使用 execSQL 来更新表达式吗?

转载 作者:行者123 更新时间:2023-11-29 17:19:49 24 4
gpt4 key购买 nike

所以我的问题是这样的。

在现有的 android 框架中,有什么方法可以使用 ContentValues 执行更新,其中 SET 值是一个表达式 ?

现在我想要实现的是一个 SQL 更新,其中一列被更新为其他两列的值,如下所示:

UPDATE myTable SET columnA = columnB + columnC WHERE rowId = 5

这行得通,没问题。但是,我看不到使用 ContentValues 和 android 文档执行此操作的任何方式 explicitly says :

void execSQL(String sql, Object[] bindArgs)

Execute a single SQL statement that is NOT a SELECT/INSERT/UPDATE/DELETE.

...

For UPDATE statements, use any of the following instead.

update(String, ContentValues, String, String[])

updateWithOnConflict(String, ContentValues, String, String[], int)

那么它可以用现有的更新方法来完成,还是我将不得不忽略文档并继续使用 execSQL?

最佳答案

好吧,我会把这个留给任何像我一样盲目的人并且错过了显而易见的:

你可以花点时间使用SQliteDatabase.compileStatement(String)或者作为Bob Malooga 如此友好地指出使用 SQLiteDatabase.rawQuery (String, String[])

关于android - 在 Android 上使用 SQLite 时,我必须使用 execSQL 来更新表达式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37093067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com