命名 Cosmbos DB 中 Container 的主键 Sql Api 不同于 "id"

Name the primary key of Container in Cosmbos DB Sql Api different than "id"

我在 Azure 上工作,我已经使用 Cosmos DB SQL API 创建了一个数据库。创建容器后,我看到主键始终命名为 "id"。有没有办法创建一个 PK 名称不同于 "id" 的容器?

PK = 主键,顺便说一句 ;) 这是用于记录的 "main" 键,它不是私有的 :)

不,据我所知您不能更改主键名称。它总是 "id"。具体必须小写,不接受"Id"。

每个文档都有一个名为 id 的唯一 ID。这是无法更改的。如果您不设置值,则会为其分配一个 GUID。

当使用 ReadDocument() 等方法(或等效方法,基于 SDK)进行直接读取而不是查询时,必须指定文档的 id 属性。

现在,就 分区 而言,您可以选择任何 属性 作为分区键。

如果您有其他特定于域的标识符(可能是部件号),您也可以始终将它们存储在它们自己的属性中。不过在这个例子中,请记住,虽然您可以 查询 包含特定部件号的文档,但您只能通过 id 直接读取。如果直接读取将是您的大部分读取操作,那么值得考虑使用 id 来存储这样的值。