SQL unique约束的用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL unique约束的用法相关的知识,希望对你有一定的参考价值。

我想知道的不是创建表的时候建立约束,而是对建好的表中的列使用unique约束,比如:
create table 成绩表4(
a1 char(5) not null
)
我在建立了成绩表4并且建立了a1列后,想对a1列使用 unique约束,,怎么用呢?
我想要的是 用语言来达到这个目的

UNIQUE 约束唯一标识数据库表中的每条记录。
UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
独特的SQL制约创建表
下列SQL创建了一个唯一约束的“ P_Id ”一栏时, “人”是创建表:
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (P_Id)
)
SQL Server / Oracle / MS Access: CREATE TABLE Persons
(
P_Id int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
参考技术A

ALTER TABLE 时的 SQL UNIQUE 约束

对已创建表修改(添加/删除)约束时可以使用 ALTER 关键字。

示例:

当表已被创建时,如需在 “P_Id” 列创建 UNIQUE 约束,请使用下面的 SQL:

如需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束,请使用下面的 SQL 语法:

from 树懒.xt

参考技术B SQL UNIQUE Constraint on ALTER TABLE
当表已被创建时,如需在 "Id_P" 列创建 UNIQUE 约束,请使用下列 SQL:
mysql / SQL Server / Oracle / MS Access:
ALTER TABLE PersonsADD UNIQUE (Id_P)
如需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE PersonsADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
参考技术C alter table 成绩表4 add unique(a1)

SQL中Unique约束有啥用啊?

看不出来。。

作用为:唯一约束保证在一个字段或者一组字段里的数据与表中其它行的数据相比是唯一的。

创建唯一约束可确保在不参与主键的特定列中不输入重复值。当唯一约束和主键都强制唯一性时,如果满足下列条件,则应将唯一约束而不是主键约束附加到表上:

1、希望在列或列的组合中强制唯一性。可将多个唯一约束附加到表,但是只能将一个主键约束附加到表。

2、希望在允许空值的列中强制唯一性。可将唯一约束附加到允许空值的列,但是只能将主键约束附加到不允许空值的列。当将唯一约束附加到允许空值的列时,请确保在约束的列中最多有 一行包含空值。

扩展资料:

SQL中其他约束有:

1、主键约束:

主键列的数据类型不限,但此列必须是唯一并且非空。如该表中已有主键为1000的行,则不能再添加主键为1000。人工或程序不好控制的时候,也可以设置主键列为自动增长列。

2、参考约束:

参考约束是一个规则,可由 SQL 和 XQuery 编译器使用,但数据库管理器不会强制执行它。

查询编译器包括一个重写查询阶段,它将 SQL 和 XQuery 语句变换为可能是优化的格式并改进所需数据的访问路径。该约束的目的不是由数据库管理器对数据执行附加验证,而是为了提高查询性能。

3、用户自定义完整性约束:

用户自定义完整性指针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。

例如某个属性必须取唯一值,某个非主属性也不能取空值,某个属性的取值范围在0-100之间等。

参考资料来源:百度百科-唯一约束

参考资料来源:百度百科-主键约束

参考资料来源:百度百科-SQL数据库

参考技术A

SQL UNIQUE 约束

    UNIQUE 约束唯一标识数据库表中的每条记录。

    UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。

    PRIMARY KEY 约束拥有自动定义的 UNIQUE 约束。

    请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。

CREATE TABLE 时的 SQL UNIQUE 约束

下面的 SQL 在 “Persons” 表创建时在 “P_Id” 列上创建 UNIQUE 约束:

--from shulan.xt

参考技术B Unique约束 唯一约束
唯一约束保证在一个字段或者一组字段里的数据与表中其它行的数据相比是唯一的。本回答被提问者采纳
参考技术C

UNIQUE 约束唯一标识数据库表中的每条记录。

UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。

from-树懒学堂

参考技术D SQL UNIQUE 约束
UNIQUE 约束唯一标识数据库表中的每条记录。
UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
http://www.w3school.com.cn/sql/sql_unique.asp
自己看看吧

以上是关于SQL unique约束的用法的主要内容,如果未能解决你的问题,请参考以下文章

SQL UNIQUE 约束

SQL UNIQUE 约束

SQL Server创建 学号 性别 课程编号 check约束 主键约束 UNIQUE约束

SQL_UNIQUE 约束(续)

SQL中Unique约束有啥用啊?

SQL中Unique约束有啥用啊?