ali表格存储更新数据表:
目前我所了解到的,如果想要更新某一条数据,首先要获取到它的所有主键进行标识才可以进行更新,为了使用方便,我特意为更新自己写了一个函数:
ots_client = OTSClient(OTS_END_POINT, AL_AccessKeyId, AL_AccessKeySecret, OTS_INS)
def update_obt(self,uid, oem_name, **extra_fields):
primary_key = [('uid', uid), ('oem_name', oem_name)]#主键
update_of_attribute_columns = {
'PUT': list((k, v) for k, v in extra_fields.items() if v or v in (0, 0.0)),
}#extra_fields 即你想要更新的字段
try:
row = Row(primary_key, update_of_attribute_columns)
condition = Condition(RowExistenceExpectation.EXPECT_EXIST) #设置验证条件,只有当满足该主键内容的数据存在时才进行修改,如果没有这个验证条件,当主键内容数据表中找不到时,他将会新建一条新的数据。
consumed, return_row = ots_client.update_row(table_name=self.table_name,
row=row,