Een database maken in Azure Cosmos DB for NoSQL met behulp van .NET
VAN TOEPASSING OP: NoSQL
Databases in Azure Cosmos DB zijn beheereenheden voor een of meer containers. Voordat u containers kunt maken of beheren, moet u eerst een database maken.
Een database een naam opgeven
In Azure Cosmos DB is een database vergelijkbaar met een naamruimte. Wanneer u een database maakt, vormt de databasenaam een segment van de URI die wordt gebruikt voor toegang tot de databaseresource en eventuele onderliggende resources.
Hier volgen enkele snelle regels bij het benoemen van een database:
- Databasenamen mogen niet leeg zijn.
- Databasenamen mogen niet langer zijn dan 256 tekens.
Zodra de URI voor een database is gemaakt, heeft deze indeling:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>
Een -database maken
Als u een database wilt maken, roept u een van de volgende methoden aan:
Een database asynchroon maken
In het volgende voorbeeld wordt een database asynchroon gemaakt:
// New instance of Database class referencing the server-side database
Database database1 = await client.CreateDatabaseAsync(
id: "adventureworks-1"
);
De CosmosClient.CreateDatabaseAsync
methode genereert een uitzondering als er al een database met dezelfde naam bestaat.
Een database asynchroon maken als deze nog niet bestaat
In het volgende voorbeeld wordt een database asynchroon gemaakt als deze nog niet bestaat in het account:
// New instance of Database class referencing the server-side database
Database database2 = await client.CreateDatabaseIfNotExistsAsync(
id: "adventureworks-2"
);
Met de CosmosClient.CreateDatabaseIfNotExistsAsync
methode wordt alleen een nieuwe database gemaakt als deze nog niet bestaat. Deze methode is handig om fouten te voorkomen als u dezelfde code meerdere keren uitvoert.
Het antwoord parseren
In alle voorbeelden tot nu toe werd het antwoord van de asynchrone aanvraag onmiddellijk naar het Database
type verzonden. Mogelijk wilt u metagegevens over het antwoord parseren, inclusief headers en de HTTP-statuscode. Het werkelijke retourtype voor de methoden CosmosClient.CreateDatabaseAsync en CosmosClient.CreateDatabaseIfNotExistsAsync is DatabaseResponse
.
In het volgende voorbeeld ziet u de methode CosmosClient.CreateDatabaseIfNotExistsAsync die een DatabaseResponse retourneert. Zodra het resultaat is geretourneerd, kunt u antwoordeigenschappen parseren en vervolgens uiteindelijk het onderliggende databaseobject ophalen:
// 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;
Volgende stappen
Nu u een database hebt gemaakt, gebruikt u de volgende handleiding om containers te maken.