Microsoft SQL AZURE 的分步介绍






4.24/5 (16投票s)
Microsoft SQL AZURE 的分步介绍
引言
虽然现在它已经不算很新了,但我们中仍有许多人只是听说过,一些人已经开始做一些研发,一些人在 Azure 平台上已经熟练掌握,而其他人则一无所知。总之,我最近进行了一些入门级的尝试,想在这篇文章中分享我的经验。在下一篇文章中,我将重点介绍 SQL Azure 的更多内容。
背景
SQL Azure 是微软提供的一种云数据服务,用于数据存储。它使用 SQL Server 作为其数据库,并使用 T-SQL 作为其用于数据访问的查询语言。
目的
这篇文章的目的并非提供 SQL AZURE 的详细信息,因为网上已经有很多了。我想重点介绍我用于进行这项小型实验的步骤。再次强调,这篇文章是为那些想在这个新领域开启旅程的人准备的。
开始旅程吧
步骤 1
我们需要在此 URL 申请 Microsoft 的 CTP(社区技术预览)帐户:申请 CTP。
第二步
SQL AZURE 团队将通过电子邮件发送邀请,其中包含邀请码和入门资源。但有一些限制,例如CTP 将限制为 1 个 SQL Azure 服务器和 5 个数据库(我收到的是这样的)。
步骤 3
所以,我们需要访问 https://sql.azure.com,在那里我们需要使用我们的 Windows LiveID 登录。
步骤 4
成功登录后,系统会要求我们输入邀请码。输入邀请码,然后点击“提交”按钮。

步骤 5
这将重定向到“使用条款”页面,阅读条款后,点击“我接受”按钮。
步骤 6
接下来,我们将看到“创建服务器”页面。

步骤 7
填写完必填字段后,我们需要点击“创建服务器”按钮。这将显示“我的项目”屏幕。

步骤 8
我们需要创建一个项目。为此,让我们点击左侧的“SQL Azure”链接。

步骤 9
我们将获得一个到目前为止已创建的项目详细信息列表。点击链接。

第 10 步
这将进入“服务器管理”部分。

第 11 步
让我们创建一个数据库。选择“数据库”选项卡,然后点击“创建数据库”按钮。我们输入一个数据库名称,例如“MyFirstCloudDB
”。点击创建按钮。

第 12 步
可以看到,我们的数据库已经创建,大小为 0 字节。
第 13 步
选择我们的数据库,然后点击“连接字符串”按钮。我们将同时获得 ADO.NET 和 ODBC 连接。

目前,从 Web 工具执行的数据库任务仅限于数据库的创建和删除。
第 14 步
转到“防火墙设置”选项卡,点击“添加规则”按钮,然后添加一条规则以允许你的 IP 地址范围。

如果防火墙设置不正确,您将收到以下错误消息
Msg 40615, Level 14, State 1, Server <servername>, Line 1 Cannot open server
<'servername' >requested by the login. Client with IP address <some IP address>
is not allowed to access the server.
Msg 18456, Level 14, State 1, Server <servername>,
Line 1 Login failed for user <'username'.>
您可以根据需要点击相应的“编辑规则”和“删除规则”按钮来编辑和删除规则。
第 15 步
现在我将描述通过 SSMS(SQL Server Management Studio)在我们的 AZURE 数据库上执行基本 CRUD 操作的步骤
- 打开 SSMS
- 在连接对话框中,点击“取消”按钮
- 接下来,点击 SSMS 的“新建查询”按钮
- 连接对话框将出现,我们需要在此输入
- 服务器名称
- 登录
- 密码
现在,我们已经从“服务器管理”页面获得了登录信息。
(参考步骤 13)。看起来是这样的
"Provider=SQLNCLI10;Server=tcp:xx0x0xxxxx.database.windows.net; Database= MyFirstCloudDB; ID=niladri; Password=myPassword; Trusted_Connection=False;Encrypt=True;"
所以我们将相应地输入凭据。
请注意,密码是管理员密码,而不是连接字符串(图 9)中的“mypassword”。
- 点击“连接”按钮,如果信息输入正确,则将建立与 SQL Azure 数据库的连接,并打开一个新的查询窗口。
- 数据库列表将在 SSMS 的“可用数据库”部分显示。
-
现在,假设你想在 `MyFirstCloudDB` 中创建一个对象(例如一个表)。因此,当你在 SSMS 的可用数据库部分选择 `MyFirstCloudDB` 时,你会遇到一个错误消息:“数据库 `MyFirstCloudDB` 无法访问”。
-
为了解决这个问题,请按照以下步骤操作
-
登出
-
再次连接,这次在“选项”->“连接到数据库”->“键入 `MyFirstCloudDB`”,然后连接。
-
点击“连接”按钮
注意:有时,即使连接成功,您也可能会遇到错误消息
“Invalid object name 'sys.configurations'. (Microsoft SQL Server, Error: 208)”
在这种情况下,你也需要按照(h)中提到的相同步骤进行操作。
有关最后一个错误消息的更多信息,您可以参考“无效对象名称 'sys.configurations'。(.NET SqlClient Data Provider)”。
-
- 现在让我们在 MyFirstCloudDB 中创建一个表
让我们发出以下命令并执行查询
CREATE TABLE MYTESTTABLE(Field1 INT,Field2 VARCHAR(20)) INSERT INTO MYTESTTABLE SELECT 1,'Value1' UNION ALL SELECT 2, 'Value2'
你将遇到以下错误
Msg 40054, Level 16, State 1, Line 2 Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again.
这清楚地表明我们需要创建一个聚集索引,即主键列。
所以,让我们将查询更改为以下
CREATE TABLE MYTESTTABLE(Field1 INT PRIMARY KEY,Field2 VARCHAR(20)) INSERT INTO MYTESTTABLE SELECT 1,'Value1' UNION ALL SELECT 2, 'Value2'
发出一个 `select` 命令将得到以下结果
SELECT * FROM MYTESTTABLE Field1 Field2 1 Value1 2 Value2
发出一个 `update` 命令并查看结果
UPDATE MYTESTTABLE SET Field2 = 'New Value2' WHERE Field1 = 2 SELECT * FROM MYTESTTABLE Field1 Field2 1 Value1 2 New Value2
发出一个 `delete` 命令并查看结果
DELETE FROM MYTESTTABLE WHERE Field1 = 2 SELECT * FROM MYTESTTABLE Field1 Field2 1 Value1
SQL Azure 也支持 T-SQL。例如,让我们观察下面的存储过程。
Create Procedure dbo.Usp_GetRecords AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; SELECT Field1, Field2 FROM MyTestTable END
运行存储过程后,输出如预期
Field1 Field2 1 Value1
- 现在让我们转到 SQL Azure 的服务器管理页面并刷新页面。请注意,数据库大小已更改为 16KB。这表明我们的表对象现在位于云环境中。

参考文献
结论
这只是我想分享的关于我尝试 SQL Azure 的经验。我将继续进行更多实验,并与大家分享。非常感谢您的反馈。