Azure Cosmos DB 中的容器會儲存一組項目。 在你能建立、查詢或管理物品之前,你必須先建立一個容器。
命名一個容器
在 Azure Cosmos DB 中,容器類似於關聯式資料庫中的資料表。 當你建立容器時,容器名稱會構成用來存取容器資源和子項目的 URI 區段。
一旦建立,容器的 URI 格式如下:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
建立容器
- createIfNotExists - 如果容器不存在,則建立容器。 如果有的話,請退回容器。
- create - 建立容器。 如果有,請回傳錯誤狀態代碼。
const containerName = 'myContainer';
// Possible results:
// Create then return container
// Return existing container
// Return error statusCode
const { statusCode, container } = await database.containers.createIfNotExists({ id: containerName });
// Possible results:
// Create then return container
// Return error statusCode, reason includes container already exists
const { statusCode, container} = await database.containers.create({ id: containerName });
statusCode 是 HTTP 回應碼。 成功反應的比例約為200-299。
存取容器
容器可以直接從 Container 物件取得,或由 CosmosClient 或 Database 物件串接獲取。
const databaseName = 'myDb';
const containerName = 'myContainer';
// Chained - assumes database and container already exis
const { container, statusCode } = await client.database(databaseName).container(containerName);
// Direct - assumes database and container already exist
const { database, statusCode } = await client.database(databaseName);
if(statusCode < 400){
const { container, statusCode } = await database.container(containerName);
}
// Query - assumes database and container already exist
const { resources } = await client.database(databaseName).containers
.query({
query: `SELECT * FROM root r where r.id =@containerId`,
parameters: [
{
name: '@containerId',
value: containerName
}
]
})
.fetchAll();
依物件存取:
刪除容器
const { statusCode } = await container.delete();
statusCode 是 HTTP 回應碼。 成功反應的比例約為200-299。
後續步驟
現在你已經建立了容器,請使用下一個指南來製作物品。