mysql约束

  1. 非空约束NOT NULL 

在一个已创建的表里面增加非空约束:ALTER TABLE `Persons`MODIFY `Age` int NOT NULL;

在一个已创建的表里面删除非空约束:ALTER TABLE `Persons`MODIFY `Age` int   NULL;

2、唯一约束 UNIQUE

    • 当表已被创建时,在 P_Id 列创建 UNIQUE 约束:ALTER TABLE `Persons`ADD UNIQUE(`P_Id`)
    • 当表已被创建时,需命名 UNIQUE 约束,并定义多个列的 UNIQUE 约束:ALTER TABLE `Persons`ADD CONSTRAINT uc_PersonID UNIQUE (`P_Id`,`LastName`)
    • 撤销UNIQUE 约束: ALTER TABLE `Persons` DROP INDEX uc_PersonID ;

3.主键约束 PRIMARY KEY

    • 当表已被创建时,在 P_Id 列创建 primary key 约束:ALTER TABLE `Persons`ADD primary key(`P_Id`)
    • 当表已被创建时,需命名primary key 约束,并定义多个列的primary key 约束:ALTER TABLE `Persons`ADD CONSTRAINT prim_PersonID primary key (`P_Id`,`LastName`)
    • 撤销primary key 约束: ALTER TABLE `Persons` DROP primary key ;或者ALTER TABLE `Persons`DROP CONSTRAINT prim_PersonID

4.外键约束FOREIGN KEY

在一个已创建的表里面增加外键约束:ALTER TABLE `Orders`ADD FOREIGN KEY (P_Id) references Persons(ID)

在一个已创建的表里面删除非空约束:ALTER TABLE `Persons` drop FOREIGN KEY

5.检查约束 CHECK

CHECK 约束用于限制列中的值的范围,评估插入或修改后的值;

    • 如果对单个列定义 CHECK 约束,那么该列只允许特定的值。

    • 如果对一个表定义 CHECK 约束,那么此约束会基于行中其他列的值在特定的列中对值进行限制。

建表时增加check约束:

CREATE TABLE `courses`
(`id` int,
`name` varchar(255),
`student_count` int,
`created_at` date,
`teacher_id` int,
CHECK (`student_count` > 0)
)

 

 表已建添加check约束:ALTER TABLE `courses` ADD CHECK ( `student_count` > 0);

6.默认约束 DEFAULT

    • 在一个已创建的表里面增加default约束:ALTER TABLE `Orders`alter city set default 'cd'
    • 在一个已创建的表里面删除default约束:ALTER TABLE `Orders`alter city drop  default

 

 

 

posted @   测试者7月  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示