MySQL约束constraint怎么使用

MySQL约束(constraint)用于在数据库表中定义的列上施加规则,以限制插入、更新或删除操作。约束可以确保数据的完整性和一致性。

在MySQL中,可以使用以下关键字来定义约束:

PRIMARY KEY:在列上定义主键约束,用于唯一标识表中的每一行。一个表只能有一个主键约束,且主键值不能为NULL。

CREATE TABLE table_name (
    column1 datatype PRIMARY KEY,
    column2 datatype,
    ...
);

FOREIGN KEY:在列上定义外键约束,用于建立表与表之间的关系。外键值必须是被引用表中的主键值,或者为NULL(如果允许)。被引用的表必须存在。

CREATE TABLE table_name1 (
    column1 datatype PRIMARY KEY,
    column2 datatype,
    ...
    FOREIGN KEY (column2) REFERENCES table_name2(column1)
);

UNIQUE:在列上定义唯一约束,用于确保列中的值是唯一的,不可重复。

CREATE TABLE table_name (
    column1 datatype UNIQUE,
    column2 datatype,
    ...
);

NOT NULL:在列上定义非空约束,用于确保列中的值不为NULL。

CREATE TABLE table_name (
    column1 datatype NOT NULL,
    column2 datatype,
    ...
);

CHECK:在列上定义检查约束,用于限制列中的值必须满足特定的条件。

CREATE TABLE table_name (
    column1 datatype CHECK (condition),
    column2 datatype,
    ...
);

DEFAULT:在列上定义默认约束,用于指定当插入新行时,如果未提供该列的值,则使用默认值。

CREATE TABLE table_name (
    column1 datatype DEFAULT default_value,
    column2 datatype,
    ...
);

可以在创建表时定义约束,也可以在已存在的表上使用ALTER TABLE语句来添加、修改或删除约束。

阅读剩余
THE END