试用 Azure Sql 数据库
我们的12月试用账号的免费服务里有一个Azure Sql服务,最近正好自己做一个小工具需要一个数据库,正好可以把它当测试库顺便体验一把Azure Sql。
概述
Azure SQL 数据库
Azure SQL 数据库是 Azure 中托管的关系数据库即服务 (DBaaS),属于“平台即服务 (PaaS)”行业类别。
最适合用于需要使用最新的 SQL Server 稳定功能,且开发与面市时间有限的新式云应用程序。
完全托管的 SQL Server 数据库引擎,基于最新稳定的 SQL Server Enterprise Edition。 SQL 数据库有两个部署选项,每个选项都以 Microsoft 所拥有、托管及维护的标准化硬件和软件为基础。
在 SQL Server 中,无论是本地的还是 Azure 虚拟机中,都可使用需要进行广泛配置的内置特性和功能。 使用 SQL 数据库时,可以即用即付,并使用向上或向外缩放选项获得更强大的功能且不会中断服务。 SQL 数据库具有 SQL Server 所不能提供的其他一些功能,例如,内置的高可用性、智能和管理。
以上摘自 Azure Sql 文档
以上说的比较官方。简单来说就是Azure提供了一个云数据库服务,它的Sql引擎自然是微软自家的Sql Server。你大致可以认为它就是一个在线版本的Sql Server,它依托Azure提供了非常强大的高可用、高性能、可以自由伸缩等功能。
创建数据库
在portal控制台找到 Azure Sql 点击创建:

这里主要是2有个地方要注意:
- 服务器选项如果是第一次创建需要新建一个服务器,点击“新建”弹出创建服务器界面:
填写服务器名称,管理员,密码等信息,请牢记,后面需要用到。

- 计算+储存选项如果是第一次同样需要创建。点击“新建”跳转到计算与储存选择界面:

以为我使用的是12月试用账号,有免费额度。选择“标准”实例,DTU选择10,数据储存选择250G。这个配置是免费的。
注意:以上配置在12月试用账号内是免费的,千万不要选错,即使选了更低级的实例也会收费。
配置完之后点击“创建+查看”开始创建资源,等待一会后提示创建成功。这个时候我们的Azure Sql 数据库就创建好了。
使用SSMS管理数据库
通常我们管理Sql Server数据库的时候都会使用SSMS(Microsoft SQL Server Management Studio)进行新建,查询等操作。那么Azure Sql 同样支持SSMS工具进行连接并管理。
登录数据库

跟连接普通的Sql Server数据库一样在登录界面填写:
服务器名称:这里填写前面创建服务器的时候填写的名称及域名
身份验证:SQL Server 身份验证
登录名:填写前面创建服务器的时候填写的管理员名称
密码:填写前面创建服务器的时候填写的管理员密码
新建防火墙规则
填写完之后点击“连接”开始尝试连接数据库。第一次连接会提示新建防火墙规则。 我们需要在portal上把客户端的ip加入白名单。

选择左侧菜单“概述”,点击“设置服务器防火墙”

在客户端ip一栏,填写本机的ip地址。也可以填写一个网段。

配置完成后点击“保存”。提示成功后重新使用SSMS连接服务器,这次成功连接上去了。

管理数据
连接成功后就可以像普通Sql Server一样进行查询数据等操作了。
新建一张表Table_1:

编辑一行数据:

查询数据:

使用Ado.net操作数据
以上演示了使用SSMS来管理操作数据,下面演示下使用.NET Ado.net技术操作下Azure Sql。使用Ado.net操作Azure Sql我们完全可以把Azure Sql当做SqlServer来使用。所以我们只要使用SqlServer的Data Provider来操作就可以了。
安装Dapper
为了偷懒直接使用Dapper来演示,因为Dapper本身就是基于Ado.net技术实现的。
新建一个控制台项目,使用Nuget安装Dapper。

编写CRUD代码
我们使用Dapper来编写数据库改删查代码。数据库连接串可以在portal上点击左侧“数据库连接字符串”菜单获取。
static IDbConnection GetConnection()
{
var connstring = "x";
var conn = new SqlConnection();
conn.ConnectionString = connstring;
return conn;
}
static void Main(string[] args)
{
using (var conn = GetConnection())
{
conn.Open();
//insert
var result = conn.Execute("insert into Table_1 values (@id, @name, @birthday)", new { id=0, name = "user0", birthday=DateTime.Now });
Console.WriteLine("Run insert into {0}", result>0?"success":"fail");
result = conn.Execute("insert into Table_1 values (@id, @name, @birthday)", new { id = 1, name = "user1", birthday = DateTime.Now });
Console.WriteLine("Run insert into {0}", result > 0 ? "success" : "fail");
//select
var list = conn.Query<Table_1>("select * from Table_1");
foreach (var row in list)
{
Console.WriteLine("id:{0} name:{1} birthday:{2}", row.Id, row.Name, row.Birthday);
}
//update
result = conn.Execute("update Table_1 set Name = @name where id = @id", new { id = 0, name = "user00" });
Console.WriteLine("Run update {0}", result > 0 ? "success" : "fail");
//delete
result = conn.Execute("delete from Table_1 where id = @id", new { id = 0});
Console.WriteLine("Run delete {0}", result > 0 ? "success" : "fail");
}
Console.ReadLine();
}
运行结果
写完代码我们直接F5运行一下,可以看到我们成功的使用Ado.net操作了数据。

总结
通过以上我们简单介绍并演示了如果使用Azure Sql数据库。绝大部分时候我们可以把Azure Sql当做SqlServer来管理或者用代码操作。这为我们从本地数据库迁移到Azure Sql数据库提供了非常巨大的方便。对于应用层代码,只需要更改连接字符串就可以了。当然Azure Sql数据库跟本地Sql Server还是有一些差异的,在迁移前请先阅读文档:解析迁移到 SQL 数据库的过程中的 Transact-SQL 差异
试用 Azure Sql 数据库的更多相关文章
- Azure SQL 数据库的灵活缩放预览版简介
Eron Kelly SQL Server 产品管理部门产品市场营销总经理 几天前,我们宣布了发布 Azure SQL 数据库的灵活缩放公共预览版.新增的灵活缩放功能通过简化开发和管理,简化了扩展和缩 ...
- 价格更低、SLA 更强的全新 Azure SQL 数据库服务等级将于 9 月正式发布
继上周公告之后,很高兴向大家宣布更多好消息,作为我们更广泛的数据平台的一部分, 我们将在 Azure 上提供丰富的在线数据服务.9 月,我们将针对 Azure SQL 数据库推出新的服务等级.Azur ...
- 新 Azure SQL 数据库服务等级的性能
4 月 24 日,我们发布了 SQL Database 基本级(预览版)和标准级(预览版)新服务等级的预览版以及新的业务连续性功能.在本博客文章中,我们将深入探究 SQL Database 中新等级的 ...
- Azure SQL 数据库引入了新的服务级别
新的级别将提升客户体验,并提供更多的业务连续性选项 为了更好地满足您在灵活性提升方面的需求,MicrosoftAzure SQL 数据库添加了新的服务级别(基础级和标准级),以与当前处于预览状态 ...
- 在 Azure 上创建和链接 Azure SQL 数据库
本快速入门介绍了如何在 Azure 门户中创建并连接 Azure SQL 数据库.在本教程中完成的所有操作均符合 1 元试用条件. 开始之前 如果您还没有 Azure 账户,可以申请 1 元试用账户. ...
- Azure SQL 数据库弹性池现已面市
我们高兴地宣布Azure SQL 数据库弹性池现已正式面市.弹性池自去年试运行以来,得到许多软件即服务(SaaS)供应商和企业开发人员的认可,他们利用弹性池管理持续增长的云数据库和应用程序,成果高效. ...
- Azure SQL 数据库新服务级别现已正式发布
T.K.Ranga Rengarajan 2014 年 9 月 10 日上午 11:00 我们很高兴地宣布,新的 SQL 数据库服务级被基本.标准和高级级别现已正式发布.这些服务级别中含有内置且可 ...
- Azure SQL 数据库:服务级别与性能问答
ShawnBice 2014 年 5 月 5 日上午 10:00 几天前,我发表了一篇文章,并就 4 月 24 日发布的适用于Windows Azure SQL 数据库的新服务级别提供了一些预料 ...
- Azure SQL 数据库:新服务级别问答
ShawnBice 2014 年 5 月 1 日上午 11:10 本月初,我们庆祝了SQL Server 2014 的推出,并宣布正式发布分析平台系统,同时分享了智能系统服务预览版.Quentin ...
随机推荐
- 在Oracle中十分钟内创建一张千万级别的表
小表不会产生性能问题,大表才会.要练习SQL调优,还非得有大表不可.但数据不会自然产生,没有数据时如何创建一张千万级别的大表呢? 之前,我想用Oracle的批量插入语法去插入数据,此语法如下: INS ...
- 【Oracle】SQL对某字段模糊查询,哪种方案最快?
问题:有一张表hy_test,查找其字段name中包含ufo的记录数,下面哪种方案最快? A.select count(*) from hy_test where name like '%ufo%' ...
- fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached解决方法!
UserAgent 就是用户代理,又叫报头,是一串字符串,相当于浏览器的身份证号,在利用爬虫爬取网站数据时,频繁更换它可以避免触发相应的反爬机制. fake-useragent对频繁更换UserAge ...
- composer 三大组成部分
composer 三大组成部分:1. 仓库 2. 命令行下载器 3. 自动加载. 1. 仓库 公有仓库 https://packagist.org 私有仓库 https://packagist.com ...
- SpringCloud-config分布式配置
为什么要统一管理微服务配置? 随着微服务不断的增多,每个微服务都有自己对应的配置文件.在研发过程中有测试环境.UAT环境.生产环境,因此每个微服务又对应至少三个不同环境的配置文件.这么多的配置文件,如 ...
- Linux:文件和用目录权限基础
首先,用ls -i 查看文件的信息: 红框框起来的部分:-rw-r--r-- 一共是10位,第一位表示文件类型,-表示文件,d表示文件夹/目录:后面9位则表示权限 其中前三位是该文件/目录所属者的权限 ...
- Spring Batch远程分区的本地Jar包模式
1 前言 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! Spring相关文章:Springboot-Cloud Spring Batch远程分区对于大量数据的处理非常擅长,它的实现 ...
- HBase启用压缩
1. 压缩算法的比较 算法 压缩比 压缩 解压 GZIP 13.4% 21MB/s 118MB/s LZO 20.5% 135MB/s 410MB/s Snappy/Zippy 22.2% 172MB ...
- es创建普通索引以及各种查询
创建索引 创建普通索引: PUT /my_index { "settings": { "index": { "number_of_shards&quo ...
- CVE-2020-0796(Windows SMBv3) RCE漏洞复现
CVE-2020-0796 攻击机:win10:192.168.205.1 靶机win10:192.168.205.132 关闭defender防火墙 0x01 影响版本 Windows 10 190 ...