Ami*_*ima 3 python-2.7 azure-cosmosdb
我是使用 Azure 进行开发的新手。我希望你能帮助解决这个代码。我的目标是从 Azure Cosmos DB 的集合中删除项目。但我收到 http 错误:如果我使用此值 'partionKey' = '/Structures',则为 400;如果值为 '',则为 404。错误消息 =“x-ms-partitionkey 标头中提供的分区键的组件少于集合中定义的组件”
client = cosmos_client.CosmosClient("https://....documents.azure.com:443/", {'masterKey': '...'})
options = {}
options['enableCrossPartitionQuery'] = True
options['maxItemCount'] = 5
options['partitionKey'] = '/Structures'
client.DeleteItem("dbs/.../colls/.../docs/.../", options)
Run Code Online (Sandbox Code Playgroud)
该错误是由这一行引起的:
options['partitionKey'] = '/Structures'
Run Code Online (Sandbox Code Playgroud)
这里需要指定分区键的具体值,而不是列名。例如,我的分区键是“/name”,本文档中的具体值是“A”。
那么你的代码看起来像:
from azure.cosmos import cosmos_client
client = cosmos_client.CosmosClient("https://***.documents.azure.com:443/", {'masterKey': '***'})
options = {}
options['enableCrossPartitionQuery'] = True
options['maxItemCount'] = 5
options['partitionKey'] = 'A'
client.DeleteItem("dbs/db/colls/coll/docs/2", options)
Run Code Online (Sandbox Code Playgroud)