Partilhar via


Criar um banco de dados no Azure Cosmos DB para NoSQL usando .NET

APLICA-SE A: NoSQL

Os bancos de dados no Azure Cosmos DB são unidades de gerenciamento para um ou mais contêineres. Antes de criar ou gerenciar contêineres, você deve primeiro criar um banco de dados.

Nomear um banco de dados

No Azure Cosmos DB, um banco de dados é análogo a um namespace. Quando você cria um banco de dados, o nome do banco de dados forma um segmento do URI usado para acessar o recurso de banco de dados e quaisquer recursos filho.

Aqui estão algumas regras rápidas ao nomear um banco de dados:

  • Os nomes dos bancos de dados não devem estar vazios.
  • Os nomes dos bancos de dados não podem ter mais de 256 caracteres.

Uma vez criado, o URI de um banco de dados está neste formato:

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

Gorjeta

Para obter mais informações sobre limites de nome de banco de dados, consulte cotas e limites de serviço

Criar uma base de dados

Para criar um banco de dados, chame um dos seguintes métodos:

Criar um banco de dados de forma assíncrona

O exemplo a seguir cria um banco de dados de forma assíncrona:

// New instance of Database class referencing the server-side database
Database database1 = await client.CreateDatabaseAsync(
    id: "adventureworks-1"
);

O CosmosClient.CreateDatabaseAsync método lança uma exceção se já existir um banco de dados com o mesmo nome.

Criar um banco de dados de forma assíncrona, se ele ainda não existir

O exemplo a seguir cria um banco de dados de forma assíncrona somente se ele ainda não existir na conta:

// New instance of Database class referencing the server-side database
Database database2 = await client.CreateDatabaseIfNotExistsAsync(
    id: "adventureworks-2"
);

O CosmosClient.CreateDatabaseIfNotExistsAsync método só cria um novo banco de dados se ele ainda não existir. Esse método é útil para evitar erros se você executar o mesmo código várias vezes.

Analisar a resposta

Em todos os exemplos até agora, a resposta da solicitação assíncrona foi convertida imediatamente para o Database tipo. Convém analisar metadados sobre a resposta, incluindo cabeçalhos e o código de status HTTP. O tipo de retorno verdadeiro para os métodos CosmosClient.CreateDatabaseAsync e CosmosClient.CreateDatabaseIfNotExistsAsync é DatabaseResponse.

O exemplo a seguir mostra o método CosmosClient.CreateDatabaseIfNotExistsAsync retornando um DatabaseResponse. Uma vez retornado, você pode analisar as propriedades de resposta e, eventualmente, obter o objeto Database subjacente:

// 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;

Próximos passos

Agora que você criou um banco de dados, use o próximo guia para criar contêineres.