Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SQLAzure中创建两个或多个唯一列?_Sql_Azure_Unique - Fatal编程技术网

如何在SQLAzure中创建两个或多个唯一列?

如何在SQLAzure中创建两个或多个唯一列?,sql,azure,unique,Sql,Azure,Unique,我想在我的表中选择两列并使它们唯一,但我不知道如何在SQLAzure数据库中这样做。如下图所示,它没有显示任何修改表属性的选项,因此所有操作都是使用sql查询完成的: 以下是生成的表脚本: USE [mydbase] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[clientaccess]( [ID] [bigint] IDENTITY(1,1) NOT NULL, [Mod

我想在我的表中选择两列并使它们
唯一
,但我不知道如何在SQLAzure数据库中这样做。如下图所示,它没有显示任何修改表属性的选项,因此所有操作都是使用sql查询完成的:

以下是生成的表脚本:

USE [mydbase]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[clientaccess](
    [ID] [bigint] IDENTITY(1,1) NOT NULL,
    [ModuleName] [nvarchar](50) NOT NULL,
    [ClientAuthenticationId] [bigint] NOT NULL,
    [HasAccess] [bit] NOT NULL,
 CONSTRAINT [PK_clientaccess_ID] PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON)
)

GO

ALTER TABLE [dbo].[clientaccess]  WITH CHECK ADD  CONSTRAINT [CAI_caID] FOREIGN KEY([ClientAuthenticationId])
REFERENCES [dbo].[clientauthentication] ([ID])
GO

ALTER TABLE [dbo].[clientaccess] CHECK CONSTRAINT [CAI_caID]
GO  
这是我遇到问题的预览,它包含重复记录:


希望有人能理解我的解释。

有时候GUI有局限性(或者没有,但您还没有发现所有功能是如何工作的)。始终可以使用
ALTER TABLE
添加唯一约束:

ALTER TABLE [dbo].[clientaccess] 
  ADD CONSTRAINT Module_Client_UQ                --- choose a name
  UNIQUE (ModuleName, ClientAuthenticationId) ;

是否要使两列的组合
(ModuleName,ClientAuthenticationId)
唯一?可以使用ALTER TABLE添加唯一约束:
ALTER TABLE[dbo]。[clientaccess]添加约束模块\u客户端\u唯一(ModuleName,ClientAuthenticationId)
@ypercube-看起来像是我的答案。“有时候GUI有限制……”这是因为它是SQL Azure,在访问SQL Azure时,您无法访问Mgt Studio中的所有功能database@Matt:Thnx。我没有使用Azure,所以我不确定OP是否找不到方法或存在限制。