Azure Cosmos 資料庫中的資料庫是管理一個或多個容器的單位。 在你建立或管理容器之前,你必須先建立一個資料庫。
命名資料庫
在 Azure Cosmos DB 中,資料庫類似於命名空間。 當你建立資料庫時,資料庫名稱會構成用來存取資料庫資源及子資源的 URI 區段。
以下是命名資料庫時的一些快速規則:
- 資料庫名稱不得為空。
- 資料庫名稱不能超過 256 個字元。
建立後,資料庫的 URI 格式如下:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>
小提示
欲了解更多資料庫名稱限制資訊,請參閱 服務配額與限制
建立資料庫
要建立資料庫,請呼叫以下其中一種方法:
非同步建立資料庫
以下是非同步建立資料庫的範例:
// New instance of Database class referencing the server-side database
Database database1 = await client.CreateDatabaseAsync(
id: "adventureworks-1"
);
如果已有同名資料庫存在,該 CosmosClient.CreateDatabaseAsync 方法會拋出例外。
如果資料庫還不存在,請非同步建立
以下範例僅在帳號中尚未存在資料庫時,才會異步創建資料庫:
// New instance of Database class referencing the server-side database
Database database2 = await client.CreateDatabaseIfNotExistsAsync(
id: "adventureworks-2"
);
CosmosClient.CreateDatabaseIfNotExistsAsync這個方法只有在資料庫尚未存在時才會建立新的。 這個方法有助於避免多次執行相同程式碼的錯誤。
解析回應
迄今為止所有範例中,非同步請求的回應都會立即被轉換成Database型別。 你可能想解析回應的元資料,包括標頭和 HTTP 狀態碼。
CosmosClient.CreateDatabaseAsync 與 CosmosClient.CreateDatabaseIfNotExistsAsync 方法的真實回傳類型為 DatabaseResponse。
以下範例展示了 CosmosClient.CreateDatabaseIfNotExistsAsync 方法回傳 DatabaseResponse。 回傳後,你可以解析回應屬性,最終取得底層的 資料庫 物件:
// New instance of Database response class referencing the server-side database
DatabaseResponse response = await client.CreateDatabaseIfNotExistsAsync(
id: "adventureworks-3"
);
// Parse additional response properties
Database database3 = response.Database;
後續步驟
現在你已經建立了資料庫,請參考下一個指南來建立容器。