Creación de una base de datos en Azure Cosmos DB for NoSQL mediante .NET
SE APLICA A: NoSQL
Las bases de datos de Azure Cosmos DB son unidades de administración para uno o varios contenedores. Para poder crear o administrar contenedores, primero debe crear una base de datos.
Asignación de nombre a una base de datos
En Azure Cosmos DB, una base de datos es análoga a un espacio de nombres. Al crear una base de datos, el nombre de la base de datos forma un segmento del URI utilizado para acceder al recurso de base de datos y a los recursos secundarios.
Estas son algunas reglas rápidas de la asignación de un nombre a una base de datos:
- Los nombres de base de datos no deben estar vacíos.
- Los nombres de las bases de datos no pueden tener más de 256 caracteres.
Una vez creado, el URI de una base de datos tiene este formato:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>
Sugerencia
Para más información sobre los límites de nombres de base de datos, consulte Límites y cuotas de servicio
Crear una base de datos
Para crear una base de datos, llame a uno de los métodos siguientes:
Creación de una base de datos de forma asincrónica
En el ejemplo siguiente se crea una base de datos de forma asincrónica:
// New instance of Database class referencing the server-side database
Database database1 = await client.CreateDatabaseAsync(
id: "adventureworks-1"
);
El método CosmosClient.CreateDatabaseAsync
emite una excepción si ya existe una base de datos con el mismo nombre.
Creación de una base de datos de forma asincrónica si no existe
En el ejemplo siguiente se crea una base de datos de forma asincrónica solo si aún no existe en la cuenta:
// New instance of Database class referencing the server-side database
Database database2 = await client.CreateDatabaseIfNotExistsAsync(
id: "adventureworks-2"
);
El método CosmosClient.CreateDatabaseIfNotExistsAsync
solo crea una nueva base de datos si no existe ya. Este método es útil para evitar errores si ejecuta el mismo código varias veces.
Análisis de la respuesta
En todos los ejemplos presentados hasta ahora, la respuesta de la solicitud asincrónica se convirtió inmediatamente al tipo Database
. Es posible que quiera analizar los metadatos sobre la respuesta, incluidos los encabezados y el código de estado HTTP. El verdadero tipo de valor devuelto para los métodos CosmosClient.CreateDatabaseAsync y CosmosClient.CreateDatabaseIfNotExistsAsync es DatabaseResponse
.
En el ejemplo siguiente se muestra el método CosmosClient.CreateDatabaseIfNotExistsAsync que devuelve una DatabaseResponse. Una vez devuelto, puede analizar las propiedades de respuesta y, finalmente, obtener el objeto Base de datos subyacente:
// 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;
Pasos siguientes
Ahora que ha creado una base de datos, use la siguiente guía para crear contenedores.