Skapa en databas i Azure Cosmos DB för NoSQL med Python
GÄLLER FÖR: NoSQL
Databaser i Azure Cosmos DB är hanteringsenheter för en eller flera containrar. Innan du kan skapa eller hantera containrar måste du först skapa en databas.
Namnge en databas
I Azure Cosmos DB motsvarar en databas ett namnområde. När du skapar en databas utgör databasnamnet ett segment av den URI som används för att komma åt databasresursen och eventuella underordnade resurser.
När den har skapats är URI:n för en databas i det här formatet:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>
Skapa en -databas
Om du vill skapa en databas anropar du någon av följande metoder:
Skapa en -databas
I följande exempel skapas en databas med CosmosClient.create_database
metoden . Den här metoden genererar ett undantag om det finns en databas med samma namn.
try:
database = client.create_database(id=DATABASE_ID)
print(f"Database created: {database.id}")
except CosmosResourceExistsError:
print("Database already exists.")
Skapa en databas om den inte redan finns
I följande exempel skapas en databas med CosmosClient.create_database_if_not_exists
metoden . Om databasen finns returnerar den här metoden databasinställningarna. Jämfört med den tidigare skapandemetoden utlöser den här metoden inget undantag om databasen redan finns. Den här metoden är användbar för att undvika fel om du kör samma kod flera gånger.
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.")
Skapa en databas asynkront
Du kan också skapa en databas asynkront med liknande objekt och metoder i namnområdet azure.cosmos.aio . Använd till exempel CosmosClient.create_database
metoden eller metoden "CosmoClient.create_database_if_not_exists .
Att arbeta asynkront är användbart när du vill utföra flera åtgärder parallellt. Mer information finns i Använda den asynkrona klienten.
Parsa svaret
I exemplen ovan är svaret från begäranden ett DatabaseProxy
, som är ett gränssnitt för att interagera med en specifik databas. Från proxyn kan du komma åt metoder för att utföra åtgärder i databasen.
I följande exempel visas metoden create_database_if_not_exists som returnerar ett databasobjekt .
database = client.create_database_if_not_exists(id=DATABASE_ID)
for container in database.list_containers():
print(f'Container name: {container["id"]}')
Nästa steg
Nu när du har skapat en databas använder du nästa guide för att skapa containrar.