删除单行数据

本文介绍如何使用 Java SDK 删除表格存储数据表的单行数据。

前提条件

初始化Tablestore Client

方法说明

public DeleteRowResponse deleteRow(DeleteRowRequest deleteRowRequest) throws TableStoreException, ClientException

DeleteRowRequest参数说明

  • rowChange(必选)RowDeleteChange:删除的行数据信息,包含以下参数。

    名称

    类型

    说明

    tableName(必选)

    String

    数据表名称。

    primaryKey(必选)

    PrimaryKey

    主键信息,包括主键列名称和主键值。

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

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

    condition(可选)

    Condition

    删除条件,详情请参见条件更新

示例代码

以下示例代码用于删除 test_table 表中主键值为 row1 的行数据。

public static void deleteRowExample(SyncClient client) {
    // 构造主键
    PrimaryKeyBuilder primaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
    primaryKeyBuilder.addPrimaryKeyColumn("id", PrimaryKeyValue.fromString("row1"));
    PrimaryKey primaryKey = primaryKeyBuilder.build();

    // 构造删除的行数据
    RowDeleteChange rowDeleteChange = new RowDeleteChange("test_table", primaryKey);

    // 调用 deleteRow 方法删除行数据
    DeleteRowRequest deleteRowRequest = new DeleteRowRequest(rowDeleteChange);
    DeleteRowResponse deleteRowResponse = client.deleteRow(deleteRowRequest);

    // 返回结果处理
    System.out.println("RequestId: " + deleteRowResponse.getRequestId());
    System.out.println("Read CU Cost: " + deleteRowResponse.getConsumedCapacity().getCapacityUnit().getReadCapacityUnit());
    System.out.println("Write CU Cost: " + deleteRowResponse.getConsumedCapacity().getCapacityUnit().getWriteCapacityUnit());
}

相关文档