PYTHON - 删除cosmos db中分区集合中的文档

时间:2018-04-30 02:27:21

标签: python-3.x azure-cosmosdb

我是python脚本的新手,目前正在开发一段代码来删除cosmos db中的文档。

该脚本成功删除非分区集合中的文档。 当我使用相同的分区收集时,我得到400错误,当我在选项中使用分区键时,我得到404资源未找到。

1)我使用查询文档选择记录并将文件写入备份

2)自己把它放在列表中

3)迭代_self并使用下面的代码进行删除,这些代码在分区集合中不起作用

#options['partitionkey']='Ne2214553' 
#options['partitionkey']='/name' 

for i in lstlength:
                                item=lst[i]
                                print('item:',item)
                                del_itm_cnt=del_itm_cnt+1
                                client.DeleteDocument(item,options)

我应该传递什么选项,我尝试使用分区键名称('/ name')和分区键值('Ne2214553')

请帮助我。

1 个答案:

答案 0 :(得分:1)

您需要设置分区键的值,例如'Ne2214553'而不是'/name'

options = {}
options['partitionKey'] = 'Ne2214553'
client.DeleteDocument("dbs/db/colls/part/docs/1", options)

以上代码对我有用,如果与您提供的分区键值匹配,则可以检查代码中item的值。