跳到主要内容

约束

2024年06月12日
柏拉文
越努力,越幸运

一、认识


约束 用于规定表中的数据规则。如果存在违反约束的数据行为,行为会被约束终止。约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。

二、not null


2.1 认识

not null 约束强制列不接受 NULL 值。NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

2.2 语法

三、unique


3.1 认识

unique 约束唯一标识数据库表中的每条记录。uniqueprimary key 约束均为列或列集合提供了唯一性的保证。primary key 约束拥有自动定义的 unique 约束。请注意,每个表可以有多个 unique 约束,但是每个表只能有一个 primary key 约束。

3.2 语法

unique (column1, column2,……): 表示这些列的组合必须是唯一的,这意味着在整个表中不能有两行数据在这些列上的值完全相同。

create table [tableName] (
column1 dataType,
column2 dataType,
unique (column1, column2,……)
)

unique key [uniqueName] (column1, column2,……): 唯一键约束的名字, 可以选择任何一个名字来代表这个约束,使用一个描述性的名字有助于理解和维护代码。表示这些列的组合必须是唯一的,这意味着在整个表中不能有两行数据在这些列上的值完全相同。

create table [tableName] (
column1 dataType,
column2 dataType,
unique key unique1 (column1, column2,……)
)

四、primary key


4.1 认识

primary key 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。

4.2 语法

create table [tableName] (
column1 dataType,
column2 dataType,
primary key (column1)
)

五、check


5.1 认识

5.2 语法

六、default


6.1 认识

6.2 语法

七、foreign key


7.1 认识

7.2 语法

八、unsigned


8.1 认识

unsigned 是数值字段的一种属性,用于指定该字段只能存储非负数(即正数和零)。当一个字段被定义为 unsigned 时,它不允许存储负数,从而可以增加正数的范围。

8.2 语法

create table [tableName](
column1Name int unsigned not null
)engine=innodb default charset=utf8 comment="XX表"