你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
大容量删除操作
“$bulk-delete”允许异步删除 FHIR 服务器中的资源。 可在系统级别或单个资源类型执行批量删除操作。
系统级别:在系统级别执行操作可跨 FHIR 服务器中的所有资源类型删除 FHIR 资源。
DELETE /$bulkDelete
单个资源类型:对单个资源类型的操作的执行允许删除 FHIR 资源映射到 URL 中的指定资源类型。
DELETE /<Resource Type>/$bulkDelete
注意
批量删除是一项谨慎使用的操作。 删除后,FHIR 服务中的资源无法还原。
批量删除操作目前以公共预览版提供。 查看免责声明以了解详细信息。
重要
预览版 API 和 SDK 在没有服务级别协议的情况下提供。 建议不要将它们用于生产工作负荷。 某些功能可能不受支持或者已受限。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款。
标头
大容量删除操作需要两个标头参数
- 接受:application/fhir+json
- 首选:respond-async
查询参数
查询参数允许筛选要删除的原始资源。 为了支持筛选,FHIR 服务查询参数为:
查询参数 | 默认值 | 说明 |
---|---|---|
_hardDelete | False | 若要删除包括历史记录版本在内的资源,请传递值 true。 |
_purgeHistory | False | 允许删除与资源关联的历史记录版本。 |
FHIR 服务支持的搜索参数 | 允许指定与搜索条件匹配的搜索条件和资源将被删除。示例:address:contains=Meadow subject:Patient.birthdate=1987-02-20 |
所有查询参数都是可选的。
$bulk-delete 响应
发出批量删除 FHIR 资源的请求后,应收到内容位置标头,其中包含终结点的绝对 URL 作为后续状态请求,例如轮询终结点。
轮询终结点: 请求轮询终结点有四个结果之一,具体取决于批量删除作业的状态。 结果在 FHIR 响应的 OperationOutcome 中提供
- 正在进行作业:此结果表示作业正在进行。 状态代码 202
- 已完成:此结果表示作业已成功完成。 完成后,将在单个资源类型级别提供已删除的资源数的信息。 状态代码 200
- 已取消:此结果状态作业由用户取消,并提供有关单个资源类型级别的资源删除数量的信息。 状态代码 200
- 失败:此结果表明作业失败。 状态代码取决于失败类型。
用于确定状态请求的示例请求和响应:
{{fhir_url}}/_operations/bulk-delete/<id>
成功完成删除作业的示例响应。
{
"resourceType": "Parameters",
"parameter": [
{
"name": "ResourceDeletedCount",
"part": [
{
"name": "Practitioner",
"valueDecimal": 10.0
},
{
"name": "Specimen",
"valueDecimal": 7.0
},
{
"name": "Device",
"valueDecimal": 3.0
}
]
}
]
}
后续步骤
本文介绍了如何在 FHIR 服务中批量删除资源。 有关支持的 FHIR 功能的信息,请参阅
FHIR® 是 HL7 的注册商标,经 HL7 许可使用。