全部产品
Search
文档中心

表格存储:写入单行数据

更新时间:Mar 30, 2026

本文介绍如何通过 Python SDK 在表格存储的数据表中写入单行数据。

前提条件

初始化Tablestore Client

方法说明

put_row(self, table_name, row, condition=None, return_type=None, transaction_id=None)

参数说明

名称

类型

说明

table_name(必选)

str

数据表名称。

row(必选)

Row

写入的行数据信息,包含以下参数。

  • primary_key(必选)List[Tuple]:主键信息,包括主键列名称和主键值。

    • 主键列数据类型包括 STRING、INTEGER 和 BINARY。

    • 写入数据的主键个数和类型必须与数据表的主键保持一致。

    • 主键列为自增列时,需将该列的值设置为占位符,详情请参见主键列自增

  • attribute_columns(必选)List[Tuple]:属性列信息,包括属性列名称、属性列值和数据版本号。

    • 属性列数据类型包括 STRING、INTEGER、BINARY、DOUBLE 和 BOOLEAN。

    • 数据版本号即时间戳,默认由系统自动生成,也可以自行指定,详情请参见数据版本和生命周期

condition(可选)

Condition

写入条件,详情请参见条件更新

return_type(可选)

ReturnType

返回类型。

  • RT_NONE:默认值,不返回数据。

  • RT_PK:返回主键列,可以用于主键列自增。

transaction_id(可选)

str

局部事务ID,用于唯一标识局部事务,详情请参见局部事务

示例代码

以下示例代码在 test_table 表中写入一行数据,该行数据的主键值为 row1。

try:
    # 构造主键、属性列
    primary_key = [('id', 'row1')]
    attribute_columns = []

    # 构造写入行数据
    row = Row(primary_key, attribute_columns)

    # 调用 put_row 方法写入行数据
    consumed, return_row = client.put_row('test_table', row)
    print('* Read CU Cost: %s' % consumed.read)
    print('* Write CU Cost: %s' % consumed.write)
except Exception as e:
    print("Put row failed with error: %s" % e)
  • 添加属性列。

    attribute_columns = [('col1','val1')]
  • 指定数据版本号,您可以为每个属性列指定单独的版本号。

    attribute_columns = [('col1','val1', int(time.time() * 1000))]

相关文档

批量更新数据