使用 JavaScript 在 Azure Cosmos DB for NoSQL 中建立容器
適用於:NoSQL
Azure Cosmos DB 中的容器會儲存項目集合。 您必須先建立容器,才能建立、查詢或管理項目。
命名容器
在 Azure Cosmos DB 中,容器類似於關聯式資料庫中的資料表。 當您建立容器時,容器名稱會成為存取容器資源和任何子資源的 URI 區段。
建立之後,容器的 URI 格式如下:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
建立容器
取得 Database 物件,然後建立 Container:
- createIfNotExists - 如果容器不存在,則建立容器。 如果確實存在,則傳回容器。
- create - 建立容器。 如果確實存在,則傳回錯誤 statusCode。
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();
透過物件存取:
- Containers (複數):建立或查詢容器。
- Container (單數):刪除容器,使用項目。
刪除容器
取得 Container 物件之後,您可以使用 Container 物件來刪除容器:
const { statusCode } = await container.delete();
statusCode 是 HTTP 回應碼。 成功的回應是在 200-299 範圍內。
下一步
現在您已建立了容器,請使用下一個指南來建立項目。