sql约束

1.概念:作用于表中字段上的规则,用于限制存储在表中的数据

2.目的:保证数据库中数据的正确、有效性和完整性

3.分类:

  • 非空约束(NOT NULL)
  • 唯一约束(UNIQUE)
  • 主键约束(PRIMARY KEY)
  • 默认约束(DEFAULT)
  • 检查约束(CHECK)
  • 外键约束(FOREIGN KEY)

案例:

sql 复制代码
create table user(
    id int primary key auto_increment comment '主键',
    name varchar(10) not null unique comment '姓名',
    age int check ( age > 0 and age <= 120 ) comment '年龄',
    status char(1) default '1' comment '状态',
    gender char(1) comment '性别'
) comment '用户表';

-- 插入数据
insert into user(name, age, status, gender) VALUES ('Tom1',19,'1','男') , ('Tom2',29,'0','男');

4.外键约束

  • 外键用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性
  • 语法
  • 删除更新行为
相关推荐
无敌的牛30 分钟前
MySQL基础
数据库·mysql
进阶的小名36 分钟前
[超轻量级延时队列(MQ)] Redis 不只是缓存:我用 Redis Stream 实现了一个延时MQ(自定义注解方式)
java·数据库·spring boot·redis·缓存·消息队列·个人开发
短剑重铸之日38 分钟前
《7天学会Redis》Day 6 - 内存&性能调优
java·数据库·redis·缓存·7天学会redis
鱼跃鹰飞1 小时前
面试题:解释一下什么是全字段排序和rowid排序
数据结构·数据库·mysql
Aloudata技术团队1 小时前
完美应对千亿级明细数据计算:Aloudata CAN 双引擎架构详解
数据库·数据分析·数据可视化
Dxy12393102161 小时前
MySQL连表查询讲解:从基础到实战
数据库·mysql
DemonAvenger1 小时前
Redis数据迁移与扩容实战:平滑扩展的技术方案
数据库·redis·性能优化
毕设十刻1 小时前
基于Vue的民宿管理系统st4rf(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
人工智能知识库2 小时前
2026年HCCDP-GaussDB工作级开发者题库(详细解析)
数据库·华为·gaussdb·题库·hccdp-gaussdb·工作级开发者认证
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ2 小时前
sql 如果字段为空就用另一个字段
数据库·sql