我有一个 @Entity,其中包含一个变量(自定义对象列表)以及表格的其他字段。我能够插入、提取和删除这个实体。
但是在更新实体方面我遇到了问题:
我想要更新该表中持有自定义对象列表的特定字段,但在编译时它会抛出错误:
但是在更新实体方面我遇到了问题:
我想要更新该表中持有自定义对象列表的特定字段,但在编译时它会抛出错误:
error: Query method parameters should either be a type that can be converted into a
database column or a List / Array that contains such type. You can consider adding a Type Adapter for this.
我可以更新完整的行对象,但问题在于更新这个单独的字段。我在@Database类上使用TypeConverters,但我已经尝试在Dao和update函数本身上使用它们,但报告了相同的错误。
有人能帮助我更新此特定字段吗?我不想提供此实体的完整对象来完成此操作。
我的实体是:
@Entity data class TableName(
@PrimaryKey
var id: String = "",
@SerializedName("varOne")
@Expose
var varOne: List<CustomObjects>? = null)
更新方法大概是这样的:
@TypeConverters(MyTypeConverters.VarOneListTypeConverters::class)
@Query("Update TableName SET varOne = :varOneList")
abstract fun updateTableName(varOneList: List<CustomObjects>)
VarOneListTypeConverters
代码吗? - jguerinet