DocumentDB - Buat Database
Pada bab ini, kita akan mempelajari cara membuat database. Untuk menggunakan Microsoft Azure DocumentDB, Anda harus memiliki akun DocumentDB, database, koleksi, dan dokumen. Kami sudah memiliki akun DocumentDB, sekarang untuk membuat database kami memiliki dua opsi -
- Portal Microsoft Azure atau
- .Net SDK
Buat Database untuk DocumentDB menggunakan Portal Microsoft Azure
Untuk membuat database menggunakan portal, berikut langkah-langkahnya.
Step 1 - Masuk ke portal Azure dan Anda akan melihat dasbor.
Step 2 - Sekarang klik pada akun DocumentDB yang dibuat dan Anda akan melihat detailnya seperti yang ditunjukkan pada tangkapan layar berikut.
Step 3 - Pilih opsi Add Database dan berikan ID untuk database Anda.
Step 4 - Klik OK.
Anda dapat melihat bahwa database telah ditambahkan. Saat ini tidak memiliki koleksi, tetapi kita dapat menambahkan koleksi nanti yang merupakan wadah yang akan menyimpan dokumen JSON kita. Perhatikan bahwa ia memiliki ID dan ID Sumber Daya.
Buat Database untuk DocumentDB Menggunakan .Net SDK
Untuk membuat database menggunakan .Net SDK, berikut langkah-langkahnya.
Step 1 - Buka Aplikasi Konsol di Visual Studio dari bab terakhir.
Step 2- Buat database baru dengan membuat objek database baru. Untuk membuat database baru, kita hanya perlu menetapkan properti Id, yang kita setel ke "mynewdb" di tugas CreateDatabase.
private async static Task CreateDatabase(DocumentClient client) {
Console.WriteLine();
Console.WriteLine("******** Create Database *******");
var databaseDefinition = new Database { Id = "mynewdb" };
var result = await client.CreateDatabaseAsync(databaseDefinition);
var database = result.Resource;
Console.WriteLine(" Database Id: {0}; Rid: {1}", database.Id, database.ResourceId);
Console.WriteLine("******** Database Created *******");
}
Step 3- Sekarang teruskan databaseDefinition ini ke CreateDatabaseAsync, dan dapatkan kembali hasilnya dengan properti Resource. Semua metode buat objek mengembalikan properti Sumber Daya yang menjelaskan item yang dibuat, yang dalam kasus ini adalah database.
Kami mendapatkan objek database baru dari properti Resource dan itu ditampilkan di Konsol bersama dengan ID Sumber Daya yang ditetapkan oleh DocumentDB padanya.
Step 4 - Sekarang panggil tugas CreateDatabase dari tugas CreateDocumentClient setelah DocumentClient dibuat.
using (var client = new DocumentClient(new Uri(EndpointUrl), AuthorizationKey)) {
await CreateDatabase(client);
}
Berikut adalah file Program.cs selengkapnya sejauh ini.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Azure.Documents;
using Microsoft.Azure.Documents.Client;
using Microsoft.Azure.Documents.Linq;
using Newtonsoft.Json;
namespace DocumentDBDemo {
class Program {
private const string EndpointUrl = "https://azuredocdbdemo.documents.azure.com:443/";
private const string AuthorizationKey = "BBhjI0gxdVPdDbS4diTjdloJq7Fp4L5RO/
StTt6UtEufDM78qM2CtBZWbyVwFPSJIm8AcfDu2O+AfV T+TYUnBQ==";
static void Main(string[] args) {
try {
CreateDocumentClient().Wait();
} catch (Exception e) {
Exception baseException = e.GetBaseException();
Console.WriteLine("Error: {0}, Message: {1}", e.Message, baseException.Message);
}
Console.ReadKey();
}
private static async Task CreateDocumentClient() {
// Create a new instance of the DocumentClient
using (var client = new DocumentClient(new Uri(EndpointUrl), AuthorizationKey)) {
await CreateDatabase(client);
}
}
private async static Task CreateDatabase(DocumentClient client) {
Console.WriteLine();
Console.WriteLine("******** Create Database *******");
var databaseDefinition = new Database { Id = "mynewdb" };
var result = await client.CreateDatabaseAsync(databaseDefinition);
var database = result.Resource;
Console.WriteLine(" Database Id: {0}; Rid: {1}", database.Id, database.ResourceId);
Console.WriteLine("******** Database Created *******");
}
}
}
Ketika kode di atas dikompilasi dan dijalankan, Anda akan menerima output berikut yang berisi ID Database dan Sumber Daya.
******** Create Database *******
Database Id: mynewdb; Rid: ltpJAA==
******** Database Created *******