最近在使用SQL Database,Visual Studio已就绪,就差一个数据库了,然而目前我还不想在本机安装SQL Database, 于是我就想到了 Azure for SQL Database, 这样艰巨任务当然要交给 Azure 去完成了。
前文:
1.下面我会介绍如何在Azure上创建SQLDatabase, 在Azure页面上进行简单查询等操作。
2.另外也会在本地安装SSMS,连接到Azure上已经创建好的SQL Database,进行简单查询等操作。
3.在Visual Studio SQL Server资源管理器连接Azure上已经创建好的SQLDatabase,进行简单查询等操作。
4.另外我们也会使用Visual Studio 自带的精简版SQL Database,这个在安装Visual Studio 时会自动安装。
5.在Azure VM(Windows 10)里安装完整版的SQL Database,在VM 里安装SSMS连接到SQL Database,另外我们也会用本地的SSMS连接到VM里的SQL Database,进行简单查询等操作。
注:现在SQL Database可以跨平台使用,所以Linux里同样可以安装SQLDatabase。
1远人民币试用:https://www.azure.cn/pricing/1rmb-trial-full/?form-type=identityauth
点击左边的新建,之后我们会在Popular里看见列出的SQL Database, 或者直接在搜索栏里直接搜索 SQL Database,如图
点击之后,会弹出页面让我们填写数据库的一些基本信息,如上图
Database name:数据库的名字,选择一个合适的名字填写在这里
Subscription:选择你的Azure订阅
Resource group:资源组的名字
Select source:数据库的源,这里可以选择空数据,也可以选择拥有样例的数据库,点击下拉框即可选择,这里推荐选择拥有样例数据的数据库,因此选择第二项
Server:服务,SQL Database 运行在上面的服务里,需要填写服务名字,登录的账户和密码,也是我们登录数据库的账户和密码,我们下面会用到
Pricing tier:选择数据大小,规格越高的数据库同样也越贵
我们可以根据自己的需求选择合适的规格,在这里我们可以看见Basic属于基本类型,每个月38块,还是很便宜的,如果创建之后不满足现在的需求,在Azure里提供自动扩容,非常的方便。
扩容,如果目前的SQL 大小以及其规格无法满足现在的需求,可以选择扩容,非常简单与方便
SQL Database运行在Azure,这张图很好解释了为什么要创建资源组,还有服务,我们创建的SQL 运行在 SQL Server上,而我们的SQL Server包含在我们的资源组里,我们的资源组属于我们的Azure订阅
最后点击下方的创建Button,等待一两分钟,数据库便会在Azure创建完成,并且处于Online状态
正在部署SQL Database
部署完成
这个是我已经创建好的 SQL DATABASE 数据库,点开之后,我们会看见一些关于数据库的基本信息
到了这步,我们基本可以在Visual Studio 或者 SSMS 连接到 Azure 上的数据库,对其进行操作,也可以直接在Azure上直接对SQL Database 进行简单的增删改查等操作,点击左侧面板Data explorer
我们对其一张Sample 表进行简单的查询,如下图
现在我们选择SSMS登录Azure上的数据库
首先,在Local机器上安装 SSMS
点击红色框内的链接即可进行下载,英文版大概802M,中文版大概829M,根据自己的要求选择语言版本,之后安装
安装之后,我们找到Microsoft SQL Server Management Studio,点击打开
Server type:选择Database Engine
Server name:输入服务的名字,这个我们可以到Azure上已经创建好的SQLDatabase概览处找到
Login:服务名
Password:密码
点击Connect
注:如果点击Connect时出现Error,显示无法连接到远端的SQL时,转到我们的Azure SQL Database里,点击防火墙设置,把当前本地的IP地址添加进去即可,这也是为安全着想
SSMS连接成功页面如下,现在我们可以在本地的SSMS上对Azure上的SQL Database进行基本操作,比如简单的查询操作
现在我们选择Visual Studio连接,在VS上方的视图里选择服务器资源管理器,然后右键数据连接-添加连接
在弹出的窗口中输入基本信息,点击测试连接,测试成功之后即可使用
简单的查询
以上基本上可以满足我们的需求使用了,但是,作为程序猿,不写几行代码来连接一下数据库怎么对得起这个称号呢:)
现在我们到Visual Studio里,在创建的项目里选择C#的Console Application
这里有两种方式连接数据库,一种是直接写C#代码,另一种直接写在配置文件里,我们先看看配置文件怎么写
我们重新回到Azure Portal,进入我们已经创建好的SQL Database页面,在左侧SETTINGS里找到Connnection strings, 点击之后我们看到如下
这里看到可以使用ADO.NET,JDBC,ODBC,PHP等连接方式,由于我们使用C#语言,所以我们选择ADO.NET, 然后我们点击复制下面的string,保存一下
回到VS的解决方案, 找到app.config, 打开
在里添加
注意修改里面ID的your_username, Password 的your_password
注:写名字和密码时去掉{}
然后我们可以新建一个SQLStr.cs类封装获取配置文件,获取配置文件书写如下
varconfig =ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
returnnew SqlConnection(config);
注意引入命名空间
usingSystem.Data.SqlClient;
usingSystem.Configuration;
最后在Program.cs类调用这个类
static void Main(string[] args)
{
var connection =SQLStr.Connection();
try
{
connection.Open();
string str = "SELECT *FROM SalesLT.Address";
SqlCommand sqlCommand = newSqlCommand(str, connection);
SqlDataReader result =sqlCommand.ExecuteReader();
while (result.Read())
{
Console.WriteLine(String.Format(",", result[0],result[1]));
}
}
catch (SqlException e)
{
Console.WriteLine(e.ToString());
}
finally
{
connection.Close();
}
}
以上为配置文件连接
我们再来看看C#代码
同样创建一个SQLStr.cs的类,然后书写
var str = new SqlConnectionStringBuilder();
str.DataSource ="courage.database.windows.net";
str.UserID ="your_username";
str.Password ="your_password";
str.InitialCatalog ="Courage";
var sqlConnection = newSqlConnection();
return newSqlConnection(str.ConnectionString);
注意修改里面ID的your_username, Password 的your_password
最后在Program.cs类里调用这个类
以上为两种连接方式的写法
可能我们也会遇到这样的问题,虽然Azuer上的 SQL Database 可以免除我们在Local 机器上安装的步骤,节省空间,但是需要实时网络连接,我们总会有这样或者那样的原因处于无网络情况,我们同样不想在Local机器上安装SQL Database,那么问题来了。好在微软的VisualStudio 团队早以考虑到我们会有这样的需求,所以把一个精简版的SQL Database内置在VS里,这样我们在安装Visual Studio时就会自动安装这个数据库,现在知道软爸爸的强大了吧!!!
回到 Visual Studio,在视图里点击SQL Server 对象资源管理器,我们会看到有两个localdb, 一个是MSSQLLocalDB(SQL Server - Version - DESKTOP - ) ,另一个是ProjectsV13(SQL Server - Version - DESKTOP), 现在我们就可以进行简单的查询等操作了
如果在SQL Server 对象资源管理器里没有发现这两项,可以右键点击SQL Server,点击添加SQL Server
现在我们已经把无论是VS自带的精简数据库还是Azure上的SQL Database都简单的了解了一下,那么如果真的实际需要完整的 SQL Database 该如何呢,这样就只能安装了,同样,不想在本地机器上安装 SQL Database我,在Azure上开一台Windows的虚拟机,这里我选择Windows 10 1709,Linux也可以,现在SQL Database支持跨平台,之后在VM里安装完整版的SQL Database,进行远程连接操作。下面我们看看具体的操作。
现在我们已经在Azure上有一台配置好的 Windows 10 Pro 1709,然后下载完整版的SQL Database,并且安装
安装完毕之后在VM上测试一下连接,同样需要下载SSMS,然后输入一些基本信息,最后连接,测试成功之后,我们在到我们的本地机器上使用SSMS进行操作,这样可以保证远端不出问题的情况下本地也不会出现问题
Azure 上 Windows 10 1709 如下
安装完整版的SQL Database,开始菜单中我们可以看到如下,这是在Azure上VM运行的完整版SQL Database
如果运行完整版出现问题时,请检查一下SQL服务是否在运行,如果没有运行可以手动开启,同样也可以设置开机自动开启,在服务里找打并开启即可,我们同样也在VM里安装SSMS,连接,确保测试成功之后我们再回到本地进行操作
我们想要在本地进行远程连接数据库前需要开启一些端口,确保能够连接成功,因此需要在Azure上对VM的网络端口进行一些设置
回到Azure,点击VM,在SETTINGS点击Networking,我们会在右面的面板看见进站规则
领取专属 10元无门槛券
私享最新 技术干货