SQL PRIMARY KEY 约束- 唯一标识表中记录的关键约束

SQL NOT NULL 约束

SQL NOT NULL 约束用于强制确保列不接受 NULL 值。这意味着该字段始终包含一个值,而不允许插入新记录或更新记录时不提供此字段的值。

在 CREATE TABLE 时使用 SQL NOT NULL

以下 SQL 确保在创建 "Persons" 表时,“ID”、“LastName” 和 “FirstName” 列将不接受 NULL 值:

1CREATE TABLE Persons ( 2 ID int NOT NULL, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255) NOT NULL, 5 Age int 6);

在 ALTER TABLE 时使用 SQL NOT NULL

要在已创建的 "Persons" 表上的 "Age" 列上创建 NOT NULL 约束,使用以下 SQL:

对于 SQL Server / MS Access:

1ALTER TABLE Persons 2ALTER COLUMN Age int NOT NULL;

对于 MySQL / Oracle(10G 之前的版本):

1ALTER TABLE Persons 2MODIFY COLUMN Age int NOT NULL;

对于 Oracle 10G 及更高版本:

1ALTER TABLE Persons 2MODIFY Age int NOT NULL;

通过这些 SQL 语句,您可以确保指定列不会包含 NULL 值,从而增强数据的完整性。

SQL UNIQUE 约束

SQL UNIQUE 约束确保列中的所有值都是不同的。UNIQUEPRIMARY KEY 约束都为列或一组列提供了唯一性的保证。PRIMARY KEY 约束自动具有 UNIQUE 约束。每个表只能有一个 PRIMARY KEY 约束,但可以有多个 UNIQUE 约束。

在 CREATE TABLE 时使用 SQL UNIQUE 约束

以下 SQL 在创建 "Persons" 表时在 "ID" 列上创建了一个 UNIQUE 约束:

对于 SQL Server / Oracle / MS Access:

1CREATE TABLE Persons ( 2 ID int NOT NULL UNIQUE, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int 6);

对于 MySQL:

1CREATE TABLE Persons ( 2 ID int NOT NULL, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int, 6 UNIQUE (ID) 7);

要为 UNIQUE 约束命名,并在多列上定义 UNIQUE 约束,请使用以下 SQL 语法:

对于 MySQL / SQL Server / Oracle / MS Access:

1CREATE TABLE Persons ( 2 ID int NOT NULL, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int, 6 CONSTRAINT UC_Person UNIQUE (ID, LastName) 7);

在 ALTER TABLE 时使用 SQL UNIQUE 约束

要在表已经创建的情况下在 "ID" 列上创建 UNIQUE 约束,请使用以下 SQL:

对于 MySQL / SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2ADD UNIQUE (ID);

要为 UNIQUE 约束命名,并在多列上定义 UNIQUE 约束,请使用以下 SQL 语法:

对于 MySQL / SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2ADD CONSTRAINT UC_Person UNIQUE (ID, LastName);

删除 UNIQUE 约束

要删除 UNIQUE 约束,请使用以下 SQL:

对于 MySQL:

1ALTER TABLE Persons 2DROP INDEX UC_Person;

对于 SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2DROP CONSTRAINT UC_Person;

通过这些 SQL 语句,您可以在数据库中定义和管理 UNIQUE 约束,以确保列中的数据唯一性。

SQL PRIMARY KEY 约束

SQL PRIMARY KEY 约束唯一标识表中的每条记录。主键必须包含唯一的值,并且不能包含 NULL 值。一个表只能有一个主键;在表中,这个主键可以由单个列(字段)或多个列(字段)组成。

在 CREATE TABLE 时使用 SQL PRIMARY KEY

以下 SQL 在创建 "Persons" 表时在 "ID" 列上创建了一个 PRIMARY KEY

对于 MySQL:

1CREATE TABLE Persons ( 2 ID int NOT NULL, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int, 6 PRIMARY KEY (ID) 7);

对于 SQL Server / Oracle / MS Access:

1CREATE TABLE Persons ( 2 ID int NOT NULL PRIMARY KEY, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int 6);

要允许对主键约束进行命名,并定义在多列上的主键约束,请使用以下 SQL 语法:

对于 MySQL / SQL Server / Oracle / MS Access:

1CREATE TABLE Persons ( 2 ID int NOT NULL, 3 LastName varchar(255) NOT NULL, 4 FirstName varchar(255), 5 Age int, 6 CONSTRAINT PK_Person PRIMARY KEY (ID, LastName) 7);

注意: 在上面的示例中只有一个 PRIMARY KEYPK_Person)。然而,主键的值由两个列(ID + LastName)组成。

在 ALTER TABLE 时使用 SQL PRIMARY KEY

要在表已经创建的情况下在 "ID" 列上创建主键约束,请使用以下 SQL:

对于 MySQL / SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2ADD PRIMARY KEY (ID);

要允许对主键约束进行命名,并定义在多列上的主键约束,请使用以下 SQL 语法:

对于 MySQL / SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2ADD CONSTRAINT PK_Person PRIMARY KEY (ID, LastName);

注意: 如果使用 ALTER TABLE 添加主键,则主键列必须在创建表时声明为不包含 NULL 值。

删除 PRIMARY KEY 约束

要删除主键约束,请使用以下 SQL:

对于 MySQL:

1ALTER TABLE Persons 2DROP PRIMARY KEY;

对于 SQL Server / Oracle / MS Access:

1ALTER TABLE Persons 2DROP CONSTRAINT PK_Person;

通过这些 SQL 语句,您可以在数据库中定义和管理 PRIMARY KEY 约束,以确保表中的数据具有唯一的标识。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

点赞
收藏

评论区

加载中...

相关推荐

sqlserver2005创建唯一约束的方法

对于一个表中非主键列的指定列,唯一(UNIQUE约束|:强制非主键上的实体完整性的约束。UNIQUE约束确保未输入重复值,并创建一个索引以增强性能。)约束确保不会输入重复的值。例如,在employee表中emp\_id列是主键,可以定义一个唯一约束来要求表中社会安全号码(ssn)列的项是唯一的。在数据库关系图中,可以使用"索引/键"属性页创建、

MySQL创建表时加入的约束以及外键约束的的意义

1,创建表时加入的约束a) 非空约束,notnullb) 唯一约束,uniquec) 主键约束,primarykeyd) 外键约束,foreignkey1,非空约束,针对某个字段设置其值不为空,如:学生的姓名不能为空droptableifexistst_studen

MySQL字段完整性约束(重要)

\TOC\完整性约束(重要)primarykey:主键,唯一标识,表都会拥有,不设置为默认找第一个不空,唯一字段,未标识则创建隐藏字段foreignkey:外键,外键要通过foreignkey语法建立表与表之间的关联uniquekey:唯一性数据,该条字段的值需要保证唯一

MySQL创建索引

创建索引方法一:创建表时  CREATETABLE表名(字段名1数据类型完整性约束条件…,字段名2数据类型完整性约束条件…,UNIQUE|FULLTEXT|

MySQL 数据类型以及约束条件

一,创建表的完整语法:语法:createtable表名(字段名1类型(宽度)约束条件,字段名2类型(宽度)约束条件,字段名3类型(宽度)约束条件);注意:1.在同一张表中,字段名不能相同2.宽度和约束条件可选,字段名和类型

MySQL(三) 完整性约束

一.介绍  约束条件与数据类型的宽度意义,都是可选参数.  作用:用于保证数据的完整性和一致性.  主要分为:PRIMARYKEY(PK)标识该字段为该表的主键,可以唯一的标识记录FOREIGNKEY(FK)标识该字段为该表的外键NOTNULL标识该字段不能为空