当前位置: 首页 > 知识库问答 >
问题:

Cosmos DB -删除文档

舒阳州
2023-03-14

如何从Cosmos DB中删除单个记录?

我可以使用SQL语法进行选择:

SELECT *
FROM collection1
WHERE (collection1._ts > 0)

果然,所有文档(类似于行?)都返回

然而,当我试图删除时,这不起作用

DELETE
FROM collection1
WHERE (collection1._ts > 0)

我如何实现这一点?

共有3个答案

范鸿畅
2023-03-14

另一个要考虑的选项是生存时间(TTL)。您可以为收藏打开此功能,然后为文档设置到期时间。文档到期后会自动为您清理。

洪俊捷
2023-03-14

最简单的方法可能是使用Azure存储资源管理器。连接后,您可以深入到所选的容器,选择一个文档,然后将其删除。您可以在上找到Cosmos DB的其他工具https://gotcosmos.com/tools.

芮意
2023-03-14

DocumentDB API的SQL专门用于查询。也就是说,它只提供SELECT,而不是UPDATEDELETE

这些操作完全受支持,但需要 REST(或 SDK)调用。例如,对于 .net,您可以调用“删除文档同步”()“替换文档同步”(),在节点.js中,这将是对删除文档 ()替换文档 () 的调用。

在您的特定场景中,您可以运行<code>选择<code>来标识要删除的文档,然后进行“删除”调用,每个文档一个(或者,为了效率和事务性,将要删除的一组文档传递到存储过程中)。

 类似资料:
  • 我正在尝试创建一个 Azure 函数(在 Python 中实现)以删除 CosmosDB 容器中的项。使用 Azure Cosmos DB Input 以下代码是我目前用于进行简单更新的代码。 _init_. py文件 function.json 了解可以使用输入绑定的 sqlQuery 配置属性来指定 delete 语句(甚至不太确定这是否是一种好的做法..),但只是想知道是否有其他删除方法可用

  • 我在Azure cosmosDB中有一个集合,我在其中启用了无默认值的生存时间(TTL)功能。 根据我将在此问题中提到的文档,一切似乎都非常清楚,但仍然缺少一些东西,因为5天后我仍然可以看到TTL为300秒的文档。 符合文件要求: Azure Cosmos DB将在这段时间后自动删除这些项目,因为它们是最后一次修改的。生存时间值以秒为单位进行配置。当您配置TTL时,系统将根据TTL值自动删除过期的

  • 我知道如何使用Azure云函数在我的CosmosDB实例中创建、读取和更新文档,但仍然不知道如何实现删除。我用作参考的主要文档是https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-cosmos-db-triggered-function. 我尝试使用没有id的输入和输出绑定(从而获取整个集合),然后过滤要从

  • 我一直在寻找一种技术,使用浏览器中的代码编辑器,使用Azure函数删除Cosmos数据库中的项目。我不想在VS上使用本地开发的代码,原因有很多。 这里提供了我使用的代码,我使用的是带有CosmosDB输入和输出绑定的HttpTrigger。它们的名称非常明显(inputDocument,outputDocument)。 这段代码在从db读取项目和编写新文档方面工作得非常好,但是我希望能够删除单个项

  • 通过指定文档的 /index/type/id 路径可以删除文档: $params = [ 'index' => 'my_index', 'type' => 'my_type', 'id' => 'my_id' ]; // Delete doc at /my_index/my_type/my_id $response = $client->delete($params);

  • 主要内容:CouchDB使用Fauxton删除文档,2. CouchDB使用cURL工具删除文档在本篇文章中,我们来学习如何删除 CouchDB 数据库中的文档。删除 CouchDB 数据库中的文档有两种方法,下面分别来看看如何操作。 CouchDB使用Fauxton删除文档 打开Fauxton url: 首先选择包含所有文档的数据库。这里是数据库“”中的所有三个文件: 选择要删除的文档,假设要删除ID为的文档,那么就点击ID为的这个文档进入详细信息,如下所示 - 在ID为的这个文档进入详细

  • 在 MongoDB 中,您可以使用 remove() 方法从集合中删除文档,语法格式如下: db.collection_name.remove(     <query>,     {         justOne: <boolean>,         writeConcern: <document>     } ) 参数说明: query:可选参数,定义要删除文档的条件; justOne:可选

  • 我已经按照较新的SDK的建议实现了批量删除。创建了要删除每个项目的任务列表,然后等待所有任务。我的 CosmosClient 配置了 BulkOperations = true。据我所知,这意味着在引擎盖下,新的SDK发挥了魔力并执行批量操作。 不幸的是,我遇到了429响应状态。这意味着我的多个请求达到了请求速率限制(它很低,仅限于开发层,但不限于此)。我想知道,一个批量操作怎么会导致429错误。