在SQL Azure中使用T-SQL创建联邦表

日期: 2012-05-06 作者:Roger Jennings翻译:冯昀晖 来源:TechTarget中国 英文

SQL Server Management Studio(SSMS) 2012支持使用新的T-SQL federations关键字(CREATE | ALTER | DROP | USE)来写查询。你可以在这里下载SQL Server 2012试用版和SSMS 2012的Express版。

  要在数据库中创建新的SQL Azure Federation,建立你要做的联邦表,需要首先在SSMS可用数据库列表中选择数据库,然后打开一个新的查询编辑器窗口,,数据类型是“int,bigint,uniqueidentifier或者varbinar(n)”,语句如下:

  CREATE FEDERATION FederationName (DistributionKeyName DataType RANGE)

  然后点击执行。例如,创建名为WADDiagnostics 的Federation,Id(来自CounterId)作为分发主键名称,语句如下:

  CREATE FEDERATION WADFederation (ID int RANGE)
  GO

  关键字RANGE表示初始表将包含所有ID值。

  当你刷新了Federation节点之后,新的WADFederation节点就出现了,如图1所示。

图1:SQL Server Management Studio 2012 Express版和更高的版本都支持针对SQL Azure Federation写T-SQL查询。

  给表添加Federation需要给“CREATE TABLE ”语句后面使用“FEDERATED ON (DistributionKeyName = SourceColumnName)”语句。例如,要创建你可以加载数据的初始 WADPerfCounters 表,请双击WADFederation节点添加AzureDiagnosis::WADFederation联邦数据库节点,在可用数据库列表中选中它,打开一个新的查询输入如下语句:

  CREATE TABLE [WADPerfCounters](
  [PartitionKey] [bigint] NOT NULL,
  [RowKey] [varchar](100) NOT NULL,
  [Timestamp] [datetime2](7) NOT NULL,
  [EventTickCount] [bigint] NOT NULL,
  [DeploymentId] [varchar](50) NOT NULL,
  [Role] [varchar](20) NOT NULL,
  [RoleInstance] [varchar](20) NOT NULL,
  [CounterName] [varchar](100) NOT NULL,
  [CounterValue] [decimal](16,8) NOT NULL,
  [CounterId] [int] NOT NULL,
  CONSTRAINT [PK_WADPerfCounters] PRIMARY KEY CLUSTERED
  ( [PartitionKey] ASC,
  [RowKey] ASC,
  [CounterId] ASC ))
  FEDERATED ON (Id = CounterID)
  GO

  然后执行。刷新下面的表列表就可以显示第一个联邦表。(参见图2)

图2:“ CREATE TABLE”命令需要使用“SQL Azure Federations”关键字。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐