本文内容
适用于:✅Azure 数据资源管理器
通过多种方法支持从表中删除数据。 以下信息可帮助你选择最适合你的用例的删除方法。
使用案例 | 注意事项 | 方法 |
---|---|---|
删除表中的所有数据。 | 使用 .clear table data 命令 |
|
定期删除旧数据。 | 需要自动删除解决方案时使用。 | 使用保留策略 |
按盘区批量删除特定数据。 | 仅在你是专家用户时使用。 | 使用 .drop extents 命令 |
根据内容删除记录。 | - 不一定删除包含已删除记录的存储项目。 - 已删除的记录无法恢复(无论使用哪种保留或可恢复性设置)。 - 需要快速删除记录时使用。 |
使用软删除 |
根据内容删除记录。 | - 删除包含已删除记录的存储项目。 - 已删除的记录无法恢复(无论使用哪种保留或可恢复性设置)。 - 需要大量系统资源和时间才能完成。 |
使用清除 |
以下部分介绍不同的删除方法。
若要删除表中的所有数据,请使用 .clear table data 命令。 这是从表中删除所有数据最高效的命令。
语法:
.clear table <TableName> data
根据保留策略自动删除数据。 可以在数据库或表级别设置保留策略。 无法保证删除发生的时间,但在保留期之前不会删除数据。 这是一种高效且便捷的删除旧数据的方法。
假设某个数据库或表的保留期设置为 90 天。 如果只需要 60 天的数据,请如下所述删除更旧的数据:
.alter-merge database <DatabaseName> policy retention softdelete = 60d
.alter-merge table <TableName> policy retention softdelete = 60d
盘区(数据分片)是数据存储在其中的内部结构。 每个盘区可容纳多达数百万条记录。 可以使用删除盘区命令逐个或者按组删除盘区。
你可以删除表中的所有行或只删除特定盘区。
删除表中的所有行:
.drop extents from TestTable
删除特定盘区:
.drop extent e9fac0d2-b6d5-4ce3-bdb4-dea052d13b42