共用方式為


使用 Python 在 Azure Cosmos DB for NoSQL 中建立資料庫

適用於:NoSQL

Azure Cosmos DB 中的資料庫是一或多個容器的管理單位。 您必須先建立資料庫,才能建立或管理容器。

命名資料庫

在 Azure Cosmos DB 中,資料庫類似於命名空間。 當您建立資料庫時,資料庫名稱會成為存取資料庫資源和任何子資源的 URI 區段。

建立之後,資料庫的 URI 格式如下:

https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>

建立資料庫

若要建立資料庫,請呼叫下列其中一種方法:

建立資料庫

下列範例會使用 CosmosClient.create_database 方法來建立資料庫。 如果已經有相同名稱的資料庫,則此方法會擲回例外狀況。

try:
    database = client.create_database(id=DATABASE_ID)
    print(f"Database created: {database.id}")

except CosmosResourceExistsError:
    print("Database already exists.")

如果資料庫不存在,請建立資料庫

下列範例會使用 CosmosClient.create_database_if_not_exists 方法來建立資料庫。 如果資料庫存在,則此方法會傳回資料庫設定。 相較於先前的 create 方法,如果資料庫已存在,則此方法不會擲回例外狀況。 這個方法有助於避免多次執行相同程式碼的錯誤。

try:
    database = client.create_database_if_not_exists(id=DATABASE_ID)
    print(f"Database created or returned: {database.id}")

except CosmosHttpResponseError:
    print("Request to the Azure Cosmos database service failed.")

以非同步方式建立資料庫

您也可以使用 azure.cosmos.aio 命名空間中的類似物件和方法,以非同步方式來建立資料庫。 例如,使用 CosmosClient.create_database 方法或 'CosmoClient.create_database_if_not_exists 方法。

當您想要平行執行多個作業時,非同步運作十分有用。 如需詳細資訊,請參閱使用非同步用戶端

剖析回應

在上述範例中,來自要求的回應是 DatabaseProxy,這是與特定資料庫互動的介面。 從 Proxy,您可以存取方法來對資料庫執行作業。

下列範例顯示可傳回 database 物件的 create_database_if_not_exists 方法。

database = client.create_database_if_not_exists(id=DATABASE_ID)
for container in database.list_containers():
    print(f'Container name: {container["id"]}')

下一步

現在您已建立了資料庫,請使用下一個指南來建立容器。