在android Room中更新实体的多个字段。
我正在为我的新项目使用android房间持久性库。我想更新表的多个字段。我在Dao中尝试过 -
@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);
我应该代替什么,以便新的objectEntity被字段值匹配的旧的objectEntity替换
答案 0 :(得分:0)
试试这段代码..
@Update
void updateData(MyTable myTable);
并将所有数据放入myTable类对象并将其传递给updateData方法..
@Query("update Comment set fname=:fname where id=:id")
void update data(String fname,int id);
答案 1 :(得分:0)
尝试以这种方式更新表的值。以下是科特林语言的示例。
@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_name,test_startDate,test_endDate,test_location是名为Test的表的字段。