使用 JavaScript 在 Azure Cosmos DB for NoSQL 中建立項目
適用於:NoSQL
Azure Cosmos DB 中的項目代表儲存在容器內的特定實體。 在 NoSQL API 中,項目是由具有唯一識別碼的 JSON 格式資料所組成。
項目、項目定義和項目回應
在 JavaScript SDK 中,三個與項目相關的物件有不同的用途。
名稱 | Operations |
---|---|
項目 | 包括「讀取」、「修補」、「取代」、「刪除」的功能。 |
ItemDefinition | 您的自訂資料物件。 自動包括 id 和 ttl 屬性。 |
ItemResponse | 包括 statusCode 、item 和其他屬性。 |
使用 ItemResponse 物件的屬性來了解作業的結果。
- statusCode:HTTP 狀態碼。 成功的回應是在 200-299 範圍內。
- activityId:作業的唯一識別碼,例如 create、read、replace 或 delete。
- etag:與資料相關聯的實體標記。 用於開放式並行、快取和條件式要求。
- item:用來執行讀取、取代、刪除這類作業的 Item 物件。
- resource:您的自訂資料。
建立項目的唯一識別碼
唯一識別碼是識別容器內專案的相異字串。 屬性 id
是建立新 JSON 文件時唯一的必要屬性。 例如,此 JSON 文件是 Azure Cosmos DB 中的有效項目:
{
"id": "unique-string-2309509"
}
在容器的範圍內,兩個項目無法共用相同的唯一識別碼。
重要
id
屬性必須區分大小寫。 名為 ID
、Id
、iD
和 _id
的屬性會被視為任意 JSON 屬性。
建立之後,項目的 URI 格式如下:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/docs/<item-resource-identifier>
使用 URI 參考項目時,請使用系統產生的資源識別碼,而不是 id
欄位。 如需 Azure Cosmos DB for NoSQL 中系統所產生項目屬性的詳細資訊,請參閱項目的屬性
建立項目
使用 create 方法,建立具有容器 items 物件的項目。
const { statusCode, item, resource, activityId, etag} = await container.items.create({
id: '2',
category: 'gear-surf-surfboards',
name: 'Sunnox Surfboard',
quantity: 8,
sale: true
});
存取項目
透過 Item 物件來存取項目。 這可以從 Container 物件進行存取,或是從 Database 或 CosmosClient 物件進行變更。
// Chained, then use a method of the Item object such as `read`
const { statusCode, item, resource, activityId, etag} = await client.database(databaseId).container(containerId).item(itemId).read();
透過物件存取:
取代項目
搭配使用 Item 物件與 replace 方法,來取代資料。
const { statusCode, item, resource, activityId, etag} = await item.replace({
id: '2',
category: 'gear-surf-surfboards-retro',
name: 'Sunnox Surfboard Retro',
quantity: 5,
sale: false
});
讀取項目
const { statusCode, item, resource, activityId, etag} = await item.read();
刪除項目
const { statusCode, item, activityId, etag} = await item.delete();
下一步
既然您已建立各種項目,請使用下一個指南來查詢項目。