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.外键约束

  • 外键用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性
  • 语法
  • 删除更新行为
相关推荐
A-刘晨阳3 小时前
AI原生时序数据库选型指南:从数据存储到智能决策的范式跃迁
数据库·时序数据库·ai-native
HalvmånEver4 小时前
MySQL的增删改查命令合集合集
数据库·sql·oracle
不剪发的Tony老师5 小时前
dblab:一款基于终端的交互式数据库客户端
数据库·sql
xwz小王子5 小时前
Science Robotics基础模型正在改写机器人集群的“游戏规则”
数据库·人工智能·机器人
茉莉玫瑰花茶5 小时前
LangGraph 介绍
服务器·网络·数据库
倒霉蛋小马6 小时前
【Redis】利用Redis构造全局唯一ID
数据库
夕除6 小时前
springboot--06
数据库·spring boot·mybatis
2401_833033626 小时前
golang如何实现MQTT主题通配符路由_golang MQTT主题通配符路由实现策略
jvm·数据库·python
运维小子7 小时前
JumpServer Applet 发布自定义远程应用:Oracle SQL Developer 自动登录
数据库·sql·oracle·jumpserver
m0_596749097 小时前
Golang怎么实现方法集与接口的匹配_Golang如何理解值类型和指针类型实现接口的区别【详解】
jvm·数据库·python