Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.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
Java 房间数据库更新问题_Java_Android - Fatal编程技术网

Java 房间数据库更新问题

Java 房间数据库更新问题,java,android,Java,Android,在android房间中更新实体的多个字段 我正在为我的新项目使用android room持久性库。我想更新表的多个字段。我试过用我的刀- @Query(" UPDATE " + TABLE_ACC_NO_DEBIT_CARD_LINK + " SET id = :id , device_id = :device_id ,transaction_key = :transaction_key , mobile = :mobile , email = :email ,account_no = :a

在android房间中更新实体的多个字段

我正在为我的新项目使用android room持久性库。我想更新表的多个字段。我试过用我的刀-

@Query(" UPDATE " + TABLE_ACC_NO_DEBIT_CARD_LINK + " SET id = :id , device_id = :device_id 
,transaction_key = :transaction_key , mobile = :mobile , email = :email 
,account_no = :account_no , debit_card = :debit_card , bank = :bank 
,is_uploaded = :is_uploaded WHERE device_id = :device_id AND account_no=:account_no")

int updateAccNoDebitCardLink( String device_idc, String account_noc
,String id,String device_id ,String transaction_key
,String mobile,String email,String account_no,String debit_card, String bank
,String is_uploaded);
比如说

@Query(UPDATE TABLENAME <place_holder>)
int updateObject(ObjetEntity objectEntity,String field);
@Query(更新表名)
int updateObject(对象属性objectEntity,字符串字段);
我应该传递什么来代替,这样新的objectEntity就被字段值匹配的旧objectEntity替换了

@Update
void updateData(MyTable myTable);
并将所有数据放入myTable类对象中,并将其传递给updateData方法

    @Query("update Comment set fname=:fname where id=:id")
void update data(String fname,int id);

尝试以这种方式更新表的值。下面是kotlin语言的示例

   @Query("UPDATE Test SET test_name=:arg1,test_startDate=:arg2,test_endDate=:arg3,test_location=:arg4 WHERE testId = :arg0")
   fun updateTest( testId: Int,testName:String,testStartTime:String,testEndTime:String,testLocation:String)

这里testId、test\u name、test\u startDate、test\u endDate、test\u location是名为test的表的字段。

到底是什么问题?为什么不确定表名?自定义更新查询//自定义更新@查询(更新表名???)int updateObject(对象属性objectEntity,字符串字段)中是否有任何选项;而不是逐个设置行名。实际上,我想用where条件更新整行。一个接一个的名字是不可行的,所以有没有选择??