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

  • 外键用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性
  • 语法
  • 删除更新行为
相关推荐
程序员萌萌36 分钟前
Redis的缓存机制和淘汰策略详解
数据库·redis·缓存机制·淘汰策略
不剪发的Tony老师1 小时前
SQLite 3.53.0版本发布,重要更新
数据库·sqlite
Bczheng11 小时前
九.Berkeley DB数据库 序列化和钱包管理(1)
数据库
cozil1 小时前
记录mysql创建数据库未指定字符集引发的问题及解决方法
数据库·mysql
架构师老Y1 小时前
013、数据库性能优化:索引、查询与连接池
数据库·python·oracle·性能优化·架构
AC赳赳老秦1 小时前
OpenClaw数据库高效操作指南:MySQL/PostgreSQL批量处理与数据迁移实战
大数据·数据库·mysql·elasticsearch·postgresql·deepseek·openclaw
一 乐1 小时前
校园线上招聘|基于springboot + vue校园线上招聘系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园线上招聘系统
liliangcsdn1 小时前
如何基于sentence_transformers构建向量计算工具
数据库·人工智能·全文检索
rchmin2 小时前
向量数据库Milvus安装及使用实战经验分享
数据库·milvus
ego.iblacat2 小时前
Python 连接 MySQL 数据库
数据库·python·mysql