.NET kullanarak NoSQL için Azure Cosmos DB'de veritabanı oluşturma

UYGULANANLAR: NOSQL

Azure Cosmos DB'deki veritabanları, bir veya daha fazla kapsayıcı için yönetim birimleridir. Kapsayıcıları oluşturabilmeniz veya yönetebilmeniz için önce bir veritabanı oluşturmanız gerekir.

Veritabanını adlandırma

Azure Cosmos DB'de veritabanı ad alanına benzer. Bir veritabanı oluşturduğunuzda, veritabanı adı veritabanı kaynağına ve tüm alt kaynaklara erişmek için kullanılan URI'nin bir kesimini oluşturur.

Bir veritabanını adlandırırken bazı hızlı kurallar şunlardır:

  • Veritabanı adları boş olmamalıdır.
  • Veritabanı adları 256 karakterden uzun olamaz.

Oluşturulduktan sonra, veritabanının URI'si şu biçimdedir:

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

İpucu

Veritabanı adı sınırları hakkında daha fazla bilgi için bkz. Hizmet kotaları ve sınırları

Veritabanı oluşturma

Veritabanı oluşturmak için aşağıdaki yöntemlerden birini çağırın:

Zaman uyumsuz olarak veritabanı oluşturma

Aşağıdaki örnek zaman uyumsuz olarak bir veritabanı oluşturur:

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

yöntemi, CosmosClient.CreateDatabaseAsync aynı ada sahip bir veritabanı zaten varsa bir özel durum oluşturur.

Henüz yoksa zaman uyumsuz olarak veritabanı oluşturma

Aşağıdaki örnek, yalnızca hesapta mevcut olmayan bir veritabanını zaman uyumsuz olarak oluşturur:

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

CosmosClient.CreateDatabaseIfNotExistsAsync yöntemi yalnızca henüz yoksa yeni bir veritabanı oluşturur. Bu yöntem, aynı kodu birden çok kez çalıştırırsanız hatalardan kaçınmak için yararlıdır.

Yanıtı ayrıştırma

Şimdiye kadarki tüm örneklerde, zaman uyumsuz istekten gelen yanıt hemen türüne Database iletildi. Üst bilgiler ve HTTP durum kodu dahil olmak üzere yanıt hakkındaki meta verileri ayrıştırmak isteyebilirsiniz. CosmosClient.CreateDatabaseAsync ve CosmosClient.CreateDatabaseIfNotExistsAsync yöntemleri için gerçek dönüş türü: DatabaseResponse.

Aşağıdaki örnekte, DatabaseResponse döndüren CosmosClient.CreateDatabaseIfNotExistsAsync yöntemi gösterilmektedir. Döndürdükten sonra yanıt özelliklerini ayrıştırabilir ve sonunda temel alınan Veritabanı nesnesini alabilirsiniz:

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

Sonraki adımlar

Artık bir veritabanı oluşturduğunuza göre, kapsayıcı oluşturmak için sonraki kılavuzu kullanın.