【发布时间】:2019-04-22 20:24:08
【问题描述】:
我对 Azure 还很陌生,所以这个问题对某些人来说可能听起来有点傻,对此深表歉意!实际上,我有一个要求,我需要更改现有 cosmos db 集合的结构以适应一个附加属性。如何使用存储过程来做到这一点?现在,我的场景有点像我有一个现有的集合,其中大约有 60 个文档,并且相同的集合也存在于其他环境中。我需要向集合结构中添加一个属性,理想情况下它应该是一次性活动。
我已经检查了Adding a new property to Cosmos DB,但与此不同的是,我的要求不是通过代码(C#)更新集合,而是通过我所说的 SP。现在,由于除了 Cosmos DB 的 SELECT 查询之外我们不能使用任何东西,我如何在下面的代码 sn-p 中使用 ALTER 文档功能?
function updateDocument(documentName){
var collection = getContext().getCollection();
var response = getContext().getResponse();
collection.queryDocuments(
// ALTER document code goes here
);
}
【问题讨论】:
-
为什么不来自 c#?
-
因为它(更新现有的集合结构)是我需要做的一次性更改
-
@Deblina - 请查看发布的答案:您无法通过 Cosmos DB SQL 执行更新。
-
是的@David 我明白了..我已经更新了我的问题以使我的要求更清楚..请看一下
-
使用 c# 不是一个限制因素,它取决于您使用什么编码。您可以在几分钟内完成批量更新,然后使用“ActionBlock”之类的东西将它全部多线程化,这样您就可以在很短的时间内更新大量数据(我在任何大型更新之前启动 RU)。但是,我想我也应该学会在函数中做这些事情:)
标签: javascript asp.net azure azure-cosmosdb