导出 (0) 打印
全部展开

删除实体

更新时间: 2014年12月

Delete Entity 操作删除表中的现有实体。

可以按如下方式构建Delete Entity请求。建议使用 HTTPS。将 myaccount 替换为你的存储帐户名称,将 mytable 替换为你的表名,并将 myPartitionKeymyRowKey 替换为用于标识要删除的实体的分区键和行键的名称:

 

方法 请求 URI HTTP 版本

DELETE

https://myaccount.table.core.windows.net/mytable(PartitionKey='myPartitionKey', RowKey='myRowKey')

HTTP/1.1

要更新的实体的地址可能在请求 URI 上采用一些不同的格式。有关详细信息,请参阅 OData 协议

在针对模拟的存储服务发出请求时,请将模拟器主机名和表服务端口指定为 127.0.0.1:10002,后跟模拟的存储帐户名称:

 

方法 请求 URI HTTP 版本

DELETE

http://127.0.0.1:10002/devstoreaccount1/myentity(PartitionKey='myPartitionKey', RowKey='myRowKey')

HTTP/1.1

存储模拟器中的表服务在某些方面与 Microsoft® Azure™ 表服务有所不同。有关详细信息,请参阅存储仿真程序与 Azure 存储服务之间的差异

无。

下表介绍必需的和可选的请求标头。

 

请求标头 说明

Authorization

必需。指定身份验证方案、帐户名和签名。有关详细信息,请参阅Azure 存储服务身份验证

Datex-ms-date

必需。为请求指定协调世界时 (UTC)。有关详细信息,请参阅Azure 存储服务身份验证

x-ms-version

可选。指定用于此请求的操作的版本。有关详细信息,请参阅Windows Azure 中 BLOB 服务、队列服务和表服务的版本管理

If-Match

必需。客户端可以在请求中指定实体的 ETag,以与服务为乐观并发目的维护的 ETag 进行比较。仅当客户端发送的 ETag 与服务器维护的值匹配(指示实体自被客户端检索以来未修改)时,才执行删除操作。

要强制无条件删除,请将 If-Match 设置为通配符 (*)。

x-ms-client-request-id

可选。提供客户端生成的、附带 1 KB 字符限制的模糊值,在启用存储分析日志记录时,将在分析日志中记录该值。强烈建议使用此标头将客户端活动与服务器接收的请求相关联。有关详细信息,请参阅关于存储分析日志记录Azure 日志记录:使用日志跟踪存储请求

无。

响应包括 HTTP 状态代码和一组响应标头。

成功的操作将返回状态代码 204(无内容)。

有关状态代码的信息,请参阅状态和错误代码表服务错误代码

响应包含以下标头。该响应还可能包括其他标准 HTTP 标头。所有标准标头都符合 HTTP/1.1 协议规范

 

响应标头 说明

x-ms-request-id

此标头唯一地标识发出的请求,并且可用于解决请求问题。有关详细信息,请参阅API 操作故障排除

x-ms-version

指示用于执行请求的表服务的版本。针对 2009-09-19 和更高版本发出的请求将返回此标头。

Date

服务生成的 UTC 日期/时间值指示启动响应的时间。

无。

帐户所有者以及使用有权执行此操作的共享访问签名的任何人可以执行此操作。

在成功删除某个实体后,该实体将立即标记为删除,并且客户端无法���访问该实体。稍后将在垃圾回收期间从表服务中删除该实体。

实体的 ETag 为删除操作提供了默认的开放式并发。ETag 值是不透明的,不应读取或依赖该值。在执行删除操作之前,表服务将验证实体的当前 ETag 值与 If-Match 标头中删除请求包含的 ETag 值是否相同。如果这两个值相同,表服务会确定实体自检索以来未修改过,因而删除操作会继续。

如果实体的 ETag 与为删除请求指定的值不同,则删除操作将失败并显示状态代码 412(前置条件失败)。此错误表明在检索实体后在服务器上更改了该实体。要解决该错误,请重新检索实体并重新发出请求。

要强制执行无条件删除操作,请将请求中 If-Match 标头的值设置为通配符 (*)。如果将该值传递给操作,则会覆盖默认开放式并发并忽略 ETag 值中的任何不匹配内容。

如果请求中缺少 If-Match 标头,服务将返回状态代码 400(错误的请求)。以其他方式错误地设置请求格式也可能会返回 400;有关更多信息,请参见表服务错误代码

可对 HTTP DELETE 请求进行身份验证和发送该请求的任何应用程序都可以删除实体。有关使用 HTTP DELETE 构造查询的详细信息,请参阅如何:添加、修改和删除实体

有关执行成批删除操作的信息,请参见执行实体组事务

显示:
© 2015 Microsoft