Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql约束

作者:望断天涯   发布日期:2025-12-27   浏览:36

-- 创建表时添加约束

CREATE TABLE employees (
    id INT AUTO_INCREMENT PRIMARY KEY, -- 主键约束,确保id字段的唯一性和非空性
    first_name VARCHAR(50) NOT NULL, -- 非空约束,确保first_name字段不能为空
    last_name VARCHAR(50) NOT NULL,
    email VARCHAR(100) UNIQUE, -- 唯一约束,确保email字段的值是唯一的
    birth_date DATE CHECK (birth_date <= CURDATE()), -- 检查约束,确保birth_date不能晚于当前日期
    department_id INT,
    FOREIGN KEY (department_id) REFERENCES departments(id) -- 外键约束,确保department_id必须存在于departments表中
);

-- 添加约束到已存在的表

ALTER TABLE employees
ADD CONSTRAINT chk_birth_date CHECK (birth_date <= CURDATE()); -- 添加检查约束

ALTER TABLE employees
ADD UNIQUE (email); -- 添加唯一约束

ALTER TABLE employees
ADD FOREIGN KEY (department_id) REFERENCES departments(id); -- 添加外键约束

-- 删除约束

ALTER TABLE employees
DROP INDEX email; -- 删除唯一约束

ALTER TABLE employees
DROP FOREIGN KEY fk_department; -- 删除外键约束(需要指定外键名称)

ALTER TABLE employees
DROP CHECK chk_birth_date; -- 删除检查约束

解释说明:

  1. 主键约束 (PRIMARY KEY):确保字段的值是唯一的,并且不允许为空。
  2. 非空约束 (NOT NULL):确保字段不能为空。
  3. 唯一约束 (UNIQUE):确保字段的值是唯一的。
  4. 检查约束 (CHECK):确保字段的值满足某些条件。
  5. 外键约束 (FOREIGN KEY):确保字段的值在另一个表中存在。

这些约束可以帮助你维护数据的完整性和一致性。

上一篇:mysql将一列数据拼接在一起

下一篇:python mysqlclient

大家都在看

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

mysql 加密

存储过程mysql

mysql 1265

mysql with语句

mysql时间加减

mysql查询表名,模糊匹配

brew 启动mysql

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站