开发手册 欢迎您!
软件开发者资料库

DocumentDB - 创建数据库

DocumentDB创建数据库 - 从简介,优势,环境设置,创建,连接帐户,创建,列表,删除数据库,创建,删除集合,插入,查询,更新,删除文档,数据建模,数据类型,限制,排序等方面学习DocumentDB ,索引记录,地理空间数据,分区,数据迁移,访问控制,可视化数据。

在本章中,我们将学习如何创建数据库.要使用Microsoft Azure DocumentDB,您必须拥有DocumentDB帐户,数据库,集合和文档.我们已经拥有一个DocumentDB帐户,现在要创建数据库我们有两个选项 :

  • Microsoft Azure Portal或

  • .Net SDK

使用Microsoft Azure门户为DocumentDB创建数据库

创建使用门户网站的数据库,以下是步骤.

步骤1 : 登录Azure门户,您将看到仪表板.

登录门户<a href=网站"/>

第2步 : 现在点击创建的DocumentDB帐户,您将看到详细信息,如以下屏幕截图所示.

点击创建了DocumentDB

第3步 : 选择Add Database选项并提供数据库的ID.

选择添加数据库

第4步 : 单击确定.

数据库已添加

您可以看到数据库是添加.目前,它没有集合,但我们可以在以后添加集合,这些集合将存储我们的JSON文档.请注意,它同时具有ID和资源ID.

使用.Net SDK为DocumentDB创建数据库

使用.Net创建数据库SDK,以下是步骤.

第1步 : 从上一章打开Visual Studio中的控制台应用程序.

步骤2 : 通过创建新数据库对象来创建新数据库.要创建新数据库,我们只需要在CreateDatabase任务中分配我们设置为"mynewdb"的Id属性.

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 *******"); }

第3步 : 现在将此databaseDefinition传递给CreateDatabaseAsync,并使用Resource属性返回结果.所有创建对象方法都返回一个Resource属性,该属性描述了创建的项目,在这种情况下是一个数据库.

我们从Resource属性获取新的数据库对象并显示它在控制台上以及DocumentDB分配给它的资源ID.

步骤4 : 现在,在实例化DocumentClient之后,从CreateDocumentClient任务调用CreateDatabase任务.

using (var client = new DocumentClient(new Uri(EndpointUrl), AuthorizationKey)) {    await CreateDatabase(client); }

以下是目前为止完整的Program.cs文件.

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 *******");      }   } }

编译并执行上述代码时,您将收到以下输出包含数据库和资源ID.

******** Create Database *******  Database Id: mynewdb; Rid: ltpJAA== ******** Database Created *******