通过 SQL 删除数据

更新时间:
复制 MD 格式

通过 Python SDK 执行 DELETE 语句,删除未开启局部事务功能的数据表中的单行数据。

前提条件

  • 安装Tablestore Python SDK并初始化客户端。

  • SQL 查询功能需要使用 5.4.2 及以上版本,建议使用最新版本。

  • 已为待操作的数据表创建映射关系,且数据表未开启局部事务功能。

  • 使用 RAM 用户时,已授予 SQL_DML 权限。

功能说明

调用 exe_sql_query 方法执行 DELETE 语句,删除一行数据。WHERE 条件必须完整指定该行的全部主键列。

def exe_sql_query(self, query)

以下示例删除 example_table 中主键为 tenant_id=1pk='row1' 的数据。

query = (
    "DELETE FROM example_table "
    "WHERE tenant_id = 1 AND pk = 'row1'"
)
row_list, table_capacity_units, _ = client.exe_sql_query(query)

参数说明

exe_sql_query 方法包含以下参数。

名称

类型

说明

query(必选)

String

要执行的 DELETE 语句,用于指定映射表和目标行的完整主键。

返回值

exe_sql_query 方法返回一个三元组,包含以下元素。

元素

类型

说明

row_list

List[Row]

SQL 删除不返回数据行,因此该元素为空列表。

table_capacity_units

List[Tuple]

各数据表消耗的读写 CU。每个元组包含数据表名称和 CapacityUnit 对象。

search_capacity_units

List[Tuple]

各多元索引消耗的读写 CU。每个元组包含多元索引名称和 CapacityUnit 对象。