赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 表格存储
  4. 开发参考
  5. SDK参考
  6. .NET SDK
  7. 基础数据操作
  8. 删除数据

删除数据

  • 基础数据操作
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

表格存储提供了DeleteRow接口用于删除单行数据以及BatchWriteRow接口用于批量删除数据。

注意事项

删除表数据,将导致数据不可恢复,请谨慎操作。

前提条件

  • 已初始化Client,具体操作,请参见初始化Tablestore Client。

  • 已创建数据表并写入数据。具体操作,请参见创建数据表和写入数据。

删除单行数据

调用DeleteRow接口删除一行数据。如果删除的行不存在,则不会发生任何变化。

接口

/// <summary>
/// 指定数据表名称和行的主键,删除一行数据。
/// </summary>
/// <param name="request">请求实例</param>
/// <returns>响应实例</returns>
public DeleteRowResponse DeleteRow(DeleteRowRequest request);

/// <summary>
/// DeleteRow的异步形式。
/// </summary>
public Task<DeleteRowResponse> DeleteRowAsync(DeleteRowRequest request);

参数

参数

说明

tableName

数据表名称。

primaryKey

行的主键。

说明

设置的主键个数和类型必须和数据表的主键个数和类型一致。

condition

使用条件更新,可以设置原行的存在性条件或者原行中某列的列值条件。更多信息,请参见条件更新。

示例

以下示例用于删除数据表中的指定行数据。

//要删除的行的PK列分别为0和"abc"。
var primaryKey = new PrimaryKey();
primaryKey.Add("pk0", new ColumnValue(0));
primaryKey.Add("pk1", new ColumnValue("abc"));

try
{
    //构造请求,RowExistenceExpectation.EXPECT_EXIST表示只有此行存在时才执行删除。
    var deleteRowRequest = new DeleteRowRequest("SampleTable", new Condition(RowExistenceExpectation.EXPECT_EXIST), primaryKey);

    //调用DeleteRow接口删除数据。
    otsClient.DeleteRow(deleteRowRequest);

    //如果没有抛出异常,则说明执行成功。
    Console.WriteLine("Delete table succeeded.");
}
catch (Exception ex)
{
    //如果抛出异常,则说明执行失败,处理异常。
    Console.WriteLine("Delete table failed, exception:{0}", ex.Message);
}            

批量删除数据

  1. 根据实际情况选择合适的方式查询待删除数据的主键信息。

    • 如果要删除指定主键范围内的数据,请调用GetRange接口,查询指定主键范围内的数据,并获取待删除数据的主键信息。具体操作,请参见范围读取数据。

    • 如果要删除满足指定条件的数据,并且该数据表存在多元索引,请使用多元索引查询满足条件的数据,并获取待删除数据的主键信息。具体操作,请参见基础查询。

    • 如果要删除数据表中所有数据,推荐您直接删除该数据表,然后重新创建一张配置相同的数据表。

      您也可以调用GetRange接口,通过设置完整主键范围均为虚拟点INF_MIN(无穷小)和INF_MAX(无穷大)进行全表数据扫描,获取所有数据的主键信息。但是执行此操作会消耗较多计算资源,请谨慎使用。

  2. 调用BatchWriteRow接口,根据主键信息批量删除数据。更多信息,请参见批量写入数据。

相关文档

如果要删除指定天数之前的数据,您可以通过为数据表配置数据生命周期的方式自动清理过期数据。具体操作,请参见数据版本和生命周期。

相关文章

写入数据 2025-04-22 14:21

表格存储提供了单行插入、单行更新和批量写入的写入方式用于写入数据到数据表。当要写

读取数据 2025-04-22 14:21

删除数据 2025-04-22 14:21

表格存储提供了DeleteRow接口用于删除单行数据以及BatchWriteRow接口用于批量删除数据。 注意事项 删除表数据,将导致数据不可恢复,请谨

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号