Chinaunix首页 | 论坛 | 博客
  • 博客访问: 44284
  • 博文数量: 41
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 215
  • 用 户 组: 普通用户
  • 注册时间: 2017-12-20 15:45
文章分类

全部博文(41)

文章存档

2018年(28)

2017年(13)

我的朋友

分类: 数据库开发技术

2018-01-09 13:28:54

Azure SQL数据仓库利用SQL来查询数据,这与SQL Server的TSQL方言之间存在着一些差异,而且查询不一定会以相同的方式进行工作。数据库管理员们(DBA)也需要使用SSDT来访问Azure SQL数据仓库。因此,您值得花费时间来查看Azure SQL数据仓库的产品预览。

您可能已经了解了各种SQL数据仓库概念,以及如何开始使用该服务并连接到数据库。 本文将向您解释如何使用Visual Studio中的SQL Server数据工具(SSDT)来针对SQL数据仓库数据库运行不同类型的T-SQL查询。

本文将创建一个SQL数据仓库数据库,并将对象添加到该数据库中,然后再对数据库进行查询。 如果您想尝试本文中的示例,那您必须拥有一个活跃的Azure订阅,并且设置了一个资源组和V12逻辑SQL服务器资讯news.webhostingtalk.cn/。

请记住,除非您在Azure提供的30天免费试用期内运行该服务,或者您持有额外的MSDN积分,否则将数据库添加到SQL数据仓库会产生Azure订阅费用。 另外,请确定您在开始之前已经了解了自己的订阅类型和费用结构。当您没有使用数据库时,请确保您暂停了该数据库,从而避免产生意外或不必要的费用。

创建数据库

您可以使用Azure门户、PowerShell或T-SQL 的CREATE DATABASE(创建数据库)语句来创建SQL数据仓库数据库。 尽管SQL数据仓库的CREATE DATABASE语句和用于本地SQL Server或Azure SQL数据库的CREATE DATABASE语句相似,但该版本却遵循着自己的语法:


语法相当一目了然,但您还是需要了解各种选项。 例如,如果您指定了COLLATE(核对)选项,那您就只能从两个核对选项中作出选择了,它们是:默认的SQL_Latin1_General_CP1_CI_AS或Latin1_General_100_CI_AS_KS_WS。

可选的MAXSIZE(最大大小)设置受到了SQL数据仓库定义的特定大小的限制,而其默认值为10,240 GB(10 TB)。 不过,您可以任意指定以下值:250、500、750、1024、 5120、 10240、 20480、30720、40960、51200或 61440。

此外,您必须添加EDITION(版本)选项,而且也必须为该选项指定datawarehouse(数据仓库)值,因为这是唯一可用的SQL数据仓库设置。

另外,您还需要SERVICE_OBJECTIVE选项,其值必须是以下预定义数据仓库单位(DWU)中的任意一个:DW100、DW200、 DW300、 DW400、DW500、 DW600、DW1000、DW1200、 DW1500或 DW2000。

让我们来查看一个集合这些元素的示例。 以下的CREATE DATABASE(创建数据库)语句创建了一个名为SdwDB2的数据库,其最大大小值为250,而DWU设置为DW100:


这就是定义SQL数据仓库数据库的步骤。 在运行语句之后,该服务将为您创建数据库,而这一过程可能需要花费几分钟的时间来完成。

当您在SSDT中使用T-SQL时,请注意IntelliSense在指出语法问题时并不总是准确的。 例如,在上述示例中,我看到IntelliSense将MAXSIZE(最大大小)选项突出显示为不正确的,但是语句却是正常运行的。

我在许多T-SQL语句中都发现过类似的问题,而在每个案例中,除非真的存在错误,否则语句也会正常运行。 请记住,SQL数据仓库仍在开发当中,并且也存在着一些问题有待解决(不过微软还是会向您收取服务费用)。

您还要注意的是,SQL数据仓库并不支持所有的T-SQL语句。 比如,您不能发出DROP DATABASE(删除数据库)语句来移除数据库,而是需要使用PowerShell或Azure门户来完成这一操作。

由于我们讨论的是有关数据库和不受支持的T-SQL语句的话题,所以我还要提醒您的是,USE(使用)语句也不可用于更改数据库内容。 在SSDT中,实现这一目标的最简单方法是在查询选项卡的顶部选择一个不同的数据库。

阅读(786) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~