MySQL-约束

约束(constraint):在创建表饿过程中,给表加上一些约束,保证数据有效,从而保证数据的有效性和完整性。

常见的约束

非空约束:not null

唯一约束:unique

主键约束:primary key

外键约束:foreign key

检查约束:check(mysql不支持,react支持)

1.非空约束

非空约束not null的字段不能为NULL

not null 只有列级约束

2.唯一性约束

唯一性约束unique的字段不能重复,但是可以为null

多个字段联合起来添加某一约束时需要用到表级约束

复制代码
CREATE TABLE IF NOT EXISTS `study3` (
`id` INT(10),
 `name` VARCHAR(255),
 `email` VARCHAR(255),
 UNIQUE(`name`,`email`)
)ENGINE=INNODB DEFAULT CHARSET=utf8;

not null 和unique能同时约束某一字段

3.主键约束(primary key)

主键约束:约束

主键字段:被主键约束的字段

主键值:主键字段上的每一个值都是主键值

主键值是每一行的唯一标识值,没有主键时表无效。

主键不能是NULL 也不能重复(noy null+unique).

一张表中的主键只有一个:

varchar不建议用来作为主键

4.文件约束

文件约束(foreign key)

外键字段:该字段上添加一个外键约束

外键值:外键字段中的每一个值

删表/删除数据/插入数据:先子后父

存储引擎

指一个表存储/组织数据的方式

表后增加

复制代码

ENGINE=INNODB DEFAULT CHARSET=utf8

指定存储引擎和编码方式mysql默认INNODB

表空间是逻辑名称,等于数据加索引

innodb最大的优势是支持事务!

事务

事务即完整的业务逻辑,最小的作业单元,批量的DML语句同时成功或同时失败

与DML语句有关(insert,delete,update)

关闭自动提交机制:

start transaction

提交:commit

回滚:rollback

事务四大特性:原子性,一致性,隔离性,持久性

隔离性

四大隔离级别(由低到高)

读未提交:read uncommitted,dirty read

读已提交:read committed,不可重复读取数据,真实

可重复读:repeatable read,重复读取到的数据没有发生改变,幻读

序列化:serializable,事务排队,不能并发(线程同步)

相关推荐
牛客企业服务15 分钟前
AI面试系统助手深度评测:6大主流工具对比分析
数据库·人工智能·python·面试·职场和发展·数据挖掘·求职招聘
神仙别闹30 分钟前
基于Python+Vue+Mysql实现(物联网)智能大棚
vue.js·物联网·mysql
kebeiovo1 小时前
Redis的五个基本类型(2)
数据库·redis·缓存
花途Jasmine1 小时前
MySQL中的DDL(一)
数据库·mysql
yh云想3 小时前
《深入解析缓存三大难题:穿透、雪崩、击穿及应对之道》
数据库·redis
ptc学习者3 小时前
oracle 11G安装大概率遇到问题
数据库
SelectDB3 小时前
天翼云与飞轮科技达成战略合作,共筑云数融合新生态
大数据·数据库·数据分析
望获linux4 小时前
【实时Linux实战系列】实时数据流处理框架分析
linux·运维·前端·数据库·chrome·操作系统·wpf
野犬寒鸦6 小时前
Pipeline功能实现Redis批处理(项目批量查询点赞情况的应用)
java·服务器·数据库·redis·后端·缓存
五岁小孩吖6 小时前
Mysql 如何使用 binlog 日志回滚操作失误的数据
mysql