MySQL
包含MySQL数据库的知识
如果大雪封门
地质大学搞计算机
展开
-
MySQL基础知识整理 ---- 事务
事务概述1.事务的概念:如果一个包含多个业务操作的步骤被事务管理,这些操作要么同时成功,要么同时失败。2.事务应用的举例模拟银行的转账操作:假设初始账户余额为1000元,均大于500,这时张三给李四转账500元。其应该分为以下几个步骤(1)查看张三用户余额是否大于500元(这里可省略)。(2)张三账户减500元。(3)李四账户加500元。如果当我们转账过程中遇到如下问题:张三转账完毕后,出现了异常,李四账户操作无法执行。这样便会导致数据的错误。那我们又该如何解决上诉问题呢? 需要将上面三个原创 2020-07-01 18:27:12 · 134 阅读 · 0 评论 -
MySQL基础知识整理 ---- 范式
概述1.什么是范式?范式是我们设计数据库是需要遵守的规范。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。2.范式之间的关系:5NF ⊂ 4NF ⊂ BCNF ⊂ 3NF ⊂ 2NF ⊂ 1NF。即如果一个范式是第五范式,那么它一定是第4范式。也就是说越高级别的范式都在其前一个范式的基础上而来,由低级别的范式到高级别的范式的过程就是我们常说的规范化。3.规范化:一个低一级范式的关系原创 2020-06-30 21:07:30 · 304 阅读 · 0 评论 -
MySQL基础知识整理 ---- 多表关系和多表查询
一.多表关系在数据库表和表之间存在三中对应关系,一对一,一对多(多对一),多对多。1.一对一关系理论上可以将任意一方向另外一方合并,但一般结合实际情况进行合并。实际运用中一般不会出现一对一的情况。比如,学生的学号和姓名是一对一的关系,但是我们在设计表时一般不会将二者分开。2.一对多关系理论上我们将一的一方向多的一方合并。实际操作时我们可以在多的一方设置外键来关联一的一方,实现合并。比如,班级和学生时一对多的关系,那我们就可以在学生表中设置外键来将其和班级表关联。3.多对多关系不能直接将量表合并原创 2020-06-30 15:43:26 · 193 阅读 · 0 评论 -
MySQL基础知识整理 ---- 约束
一.非空约束(not null)1.创建表时进行非空约束create table student( son char(5), sname varchar(10) not null);2.创建表完后添加或删除非空约束alter table student modify sname varchar(10); -- 删除非空约束alter table student modify sname varchar(10); -- 添加非空约束3.注意事项默认允许字段为空二.唯一约束(un原创 2020-06-29 22:04:32 · 142 阅读 · 0 评论 -
MySQL基础知识整理 ---- DQL查询语句
一.基本的查询语句格式1.普通:select 字段1,字段2,… from 表名 where 条件;2.去除重复的结果集:select distinct 字段1,字段2,… from 表名 where 条件;3.查询字段1和字段2的和的结果集: select 字段1+字段2 from 表名 where 条件;4.查询某个区间内的数据:select 字段1,字段2… from 表名 where 字段名 between 边界值1 and 边界值2;5.查询某些散列值得数据:select 字段1,字原创 2020-06-29 19:58:21 · 145 阅读 · 0 评论 -
MySQL基础知识整理 ---- 数据类型
一.整型数据类型所占字节数tinyint1smallint2mediumint3int4bigint8当我们在使用这些数据类型时,可以指定数据的宽度。eg: id int(8) 在这里我们将id属性的数据类型设置为int,并且宽度为8.这里的宽度实际上是指最大的宽度值,必须结合无符号数0填充使用,即当我们输入一个宽度不足8位的数据时,会在其高位补零,eg:1 -> 00000001 ,而这种0填充是无符号数特有的。当我们输入的位数超过8原创 2020-06-29 16:44:39 · 157 阅读 · 0 评论