Бөлісу құралы:


Создание базы данных в Azure Cosmos DB для NoSQL с помощью .NET

ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL

Базы данных в Azure Cosmos DB — это единицы управления для одного или нескольких контейнеров. Прежде чем создавать контейнеры или управлять ими, необходимо сначала создать базу данных.

Имя базы данных

В Azure Cosmos DB база данных аналогична пространству имен. При создании базы данных ее имя формирует сегмент URI, используемого для доступа к ресурсу базы данных и любым дочерним ресурсам.

Ниже приведены краткие правила присвоения имен базам данных.

  • Имена баз данных не должны быть пустыми.
  • Имена баз данных не могут превышать 256 символов.

После создания URI базы данных имеет следующий формат:

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

Совет

Дополнительные сведения об ограничениях имен базы данных см. в разделе "Квоты и ограничения службы"

Создание базы данных

Для создания базы данных вызовите один из следующих методов:

Асинхронное создание базы данных

В примере ниже показано асинхронное создание базы данных.

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

Метод CosmosClient.CreateDatabaseAsync создает исключение, если база данных с тем же именем уже существует.

Создайте базу данных асинхронно, если ее еще не существует

В следующем примере база данных создается асинхронно, только если ее еще не существует в учетной записи:

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

Метод CosmosClient.CreateDatabaseIfNotExistsAsync создает только новую базу данных, если она еще не существует. Этот метод полезен для предотвращения ошибок при многократном выполнении одного и того же кода.

Анализ ответа

Во всех предыдущих примерах ответ на асинхронный запрос сразу приводился к типу Database. Может потребоваться проанализировать метаданные об ответе, включая заголовки и код состояния HTTP. Истинный тип возвращаемого значения для методов CosmosClient.CreateDatabaseAsync и CosmosClient.CreateDatabaseIfNotExistsAsync — DatabaseResponse.

В следующем примере показан метод CosmosClient.CreateDatabaseIfNotExistsAsync, возвращающий DatabaseResponse. После возврата можно проанализировать свойства ответа, а затем получить базовый объект Database:

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

Следующие шаги

Теперь, когда вы создали базу данных, воспользуйтесь следующим руководством по созданию контейнеров.