SQL中的唯一列定义

时间:2014-02-24 16:46:54

标签: sql-server unique-constraint

我已经查看了一些SQL帖子,但我不确定他们的答案..例如:SQL Unique Key Syntax

我想要一个Cities表...我想定义我的国家/地区表,其中Name列是唯一的...以此为基础,如何定义Unique列?

CREATE TABLE [dbo].[Cities]
(
    [CityID] INT NOT NULL PRIMARY KEY, 
    [Name] NCHAR(100) NULL
)

2 个答案:

答案 0 :(得分:1)

您可以在表格上创建约束来执行此操作:

ALTER TABLE <tablename> ADD CONSTRAINT
<constraintname> UNIQUE NONCLUSTERED
(
    <columnname>
)

答案 1 :(得分:0)

您可以添加unique关键字:

CREATE TABLE [dbo].[Cities]
(
    [CityID] INT NOT NULL PRIMARY KEY, 
    [Name] NCHAR(100) NULL UNIQUE
);

还有其他方法。您还可以添加unique索引:

create unique index cities_name on dbo.Cities(Name);

或者使用unique约束来执行此操作:

CREATE TABLE [dbo].[Cities]
(
    [CityID] INT NOT NULL PRIMARY KEY, 
    [Name] NCHAR(100) NULL,
    constraint unique_name unique(Name)
);