MySQL
MySQL数据库
点康慕
只有了解真相才能真正的解放自己
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
19. 存储过程
文章目录创建过程查看过程调用过程修改过程 & 删除过程过程参数存储过程简称过程:procedure,是一种用来处理数据的方式存储过程是一种没有返回值的函数创建过程create procedure 过程名称([参数列表])begin -- 过程体end查看过程函数查看方式适用于查看过程show procedure status [like 'pattern'] [\G]; -- 默认是\gshow create procedure 过程名称 [\G]; --原创 2020-07-09 09:51:16 · 298 阅读 · 1 评论 -
18. 函数
文章目录系统函数自定义函数创建函数查看函数函数:将一段代码块封装到一个结构中,在需要执行代码块的时候,调用结构执行即可:代码复用任何函数都是有返回值的:因此函数的调用都是通过select调用函数分为:系统函数 vs 自定义函数系统函数系统定义好的函数:直接调用即可自定义函数函数要素:函数名称、参数列表(形参和实参)、返回值、函数体(作用域)创建函数create function 函数名称([形参列表]) returns 数据类型 -- 规定要返回的数据类型begin -原创 2020-07-04 16:46:48 · 2578 阅读 · 0 评论 -
17. 流程控制
文章目录分支结构流程控制即代码执行结构:顺序结构、分支结构、循环结构分支结构分支结构:实现准备多个代码块,按照条件选择性执行某段代码在mysql中只有if分支delimiter $$ -- 修改SQL语句结束符号: $$,默认的SQL语句结束符号是分号: ;-- 创建触发器create trigger after_orders after insert on orders for each rowbegin -- 开始 -- old:代表orders表中当前记录的状态:因为事件类型原创 2020-07-03 16:56:56 · 249 阅读 · 0 评论 -
16. MySQL触发器
文章目录创建触发器查看触发器使用触发器修改触发器 & 删除触发器触发器记录触发器:trigger,事先为某张表绑定好一段代码,当表中的某些内容发生改变的时候,即增删改操作,系统会自动触发代码执行触发器:事件类型、触发时间、触发对象事件类型:增删改:三种类型:insert、delete、update触发时间:前后:before、after触发对象:表中的每一条记录一张表中只能拥有一种触发时间的一种事件类型的触发器:最多一张表能有6个触发器创建触发器在mysql高级结构中:没有大括原创 2020-07-03 16:31:17 · 331 阅读 · 0 评论 -
15. 变量
文章目录系统变量自定义变量变量分为两种:系统变量 vs 自定义变量系统变量系统定义好的变量:大部分的时候用户根本不需要使用系统变量:系统变量是用来控制数据库服务器的表现的:如autocommit、auto_increment等等查看系统变量show variables; -- 查看所有的系统变量show variables like 'pattern'; -- 查看部分指定的系统变量查看系统变量具体指:任何一个有数据返回的内容都是由select查看select @@变量名;原创 2020-07-03 14:41:37 · 322 阅读 · 0 评论 -
14. MySQL事务
文章目录事务安全事务操作事务原理需求:有一张银行账户表:有A用户给B用户转账:A账户先减少,B账户后增加:但是A用户操作完后断电了解决方案:A账户减少钱,但是不要立即修改数据表;B账户收到钱后同时修改表数据事务安全事务:transaction,一系列要发生的连续的操作事务安全:一种保护连续操作同时满足的一种机制事务安全的意义:保证数据操作的完整性事务操作事务操作分为两种:自动事务(默认的)和手动事务手动事务操作流程:开启事务–>进行事务操作–>关闭事务(提交事务/回滚原创 2020-07-03 09:42:32 · 224 阅读 · 0 评论 -
13.数据备份与还原
文章目录数据表备份备份:将当前已有的数据或者记录保留还原:将已保留的数据恢复到对应的表中为什么要做数据备份与还原?(1)防止数据丢失:被盗、误操作(2)保护数据记录数据备份还原的方式有很多种:数据表备份、单表数据备份、SQL备份、增量备份数据表备份不需要通过SQL来备份:直接进入到数据库文件夹下赋值对应的表结构以及数据文件,以后还原的时候,直接将备份的内容放到对应的数据库目录下即可数据表备份有前提条件: 根据不同的存储引擎有不同的区别.储引擎: mysql进行数据存储的方式: 主要原创 2020-07-02 16:58:58 · 386 阅读 · 0 评论 -
12.视图
文章目录创建视图查看视图使用视图修改视图删除视图视图:view:是一种花有行有列的结构但是没有结果的虚拟表:即该虚拟表中不真实存储数据:虚拟表的结构来源不是自己定义的,而是从对应的基表中产生创建视图基本语法:create view 视图名称 as select 语句; select 语句可以是普通查询,也可以是连接查询,可以是联合查询,可以是子查询创建单表视图:基表只有一个创建多表视图:基表来源至少两个查看视图查看所有视图查看部分指定视图查看视图创建语句sho原创 2020-07-02 16:14:28 · 267 阅读 · 0 评论 -
11.子查询
文章目录标量子查询列子查询行子查询表子查询exists子查询子查询:sub query:查询是在某个查询结果之上进行的:一条select语句内部包含了另外一条select语句子查询分类:按照位置分类 vs 按照结果分类按照位置分类:子查询的select语句在外部查询的select语句中间出现from子查询:子查询跟在from之后where子查询:子查询跟在where之后exists字查询:子查询出现在exists里面按照结果分类:将子查询得到的数据进行分类:理论上讲任何一个子查询得到的原创 2020-07-02 14:50:14 · 182 阅读 · 0 评论 -
MySQL基础篇:09_多表查询之联合查询
文章目录基本语法联合查询意义联合查询:将多次查询在记录上进行拼接:记录数会增加,但是字段不会增加联合查询只要求两次查询的结果集中的字段数量一致即可:对字段名称与数据类型不要求基本语法select 语句1union [union选项]select 语句2union选项:与select选项一样:all、distinct(默认)联合查询只要求多次查询的字段数量一致:对于字段数据类型与字段名称没有要求联合查询意义联合查询的意义分为两种:查询同一张表但是需求不同:如查询学生信原创 2020-07-02 14:04:05 · 4144 阅读 · 0 评论 -
MySQL基础篇:08_外键
文章目录新增外键修改外键 & 删除外键外键作用外键:foreign key,外面的键,即键不在自己表中:如果有一个字段指向另外一张表的主键,那么该字段称之为外键新增外键外键可以在创建表的时候或者创建表之后新增:但是要考虑数据的问题,因为外键字段的数据必须在父表主键字段中有值一张表可以有多个外键外键是维持表与表之间的关联关系:涉及到的两张表称之为父表与子表:外键所在的表称之为子表;外键指向的表称之为父表如果是一对多或多对一的关系,那么外键必须加多表一方:能够通过外键匹配到父表中唯一的原创 2020-07-02 11:06:17 · 279 阅读 · 0 评论 -
MySQL基础篇:10_多表查询之连接查询
文章目录交叉连接连接查询:将多张表(可以大于2张,一张表可以同时作为多张表来使用)进行记录的连接:按照某个指定的条件进行数据的拼接:最终结果是:记录数有可能变化,字段数基本上是一定会增加:至少是多张表的字段的合并连接查询的意义:在用户查看数据的时候,需要显示的数据来自多张表连接查询:join:左表 join 右表左表:在join关键字左边的表右表:在join关键字右边的表SQL中将连接查询分为4类:内连接、外连接、自然连接和交叉连接交叉连接...原创 2020-07-01 16:19:21 · 360 阅读 · 0 评论 -
MySQL基础篇:07_数据高级操作
文章目录主键冲突蠕虫复制主键冲突在数据插入的时候,假设主键对应的值已经存在:插入一定会失败:主键冲突当主键存在冲突时(duplicate key)可以选择性的进行处理:更新和替换主键冲突:更新操作insert into 表名称[(字段列表:包含主键)] values(值列表) on duplicate key update 字段 = 新值;现在的业务需求是:当主键冲突的时候:更新相关字段的值:主键字段的值当然不变主键冲突:替换操作replace into 表名称[(字段列表:原创 2020-07-01 09:44:16 · 307 阅读 · 1 评论 -
MySQL基础篇:06_范式
文章目录范式:normal format,是一种离散数学中的知识,是为了解决一种数据的存储于优化的问题:保存数据的存储之后,凡是能够通过关系寻找出来的数据,坚决不再重复存储:终极目标是为了减少数据的冗余范式:一种分层结构的规范,分为六层:每一层都比上一层更加严格:若要满足上一层范式,前提是满足上一层范式六范式:1NF、2NF、3NF、4NF、5NF、6NF:其中1NF是最底层的;6NF是最高层的,最严格MySQL属于关系型数据库:有空间浪费,致力于节省存储空间,与范式所要解决的问题不谋而合:在设计原创 2020-06-30 16:30:24 · 302 阅读 · 0 评论 -
MySQL基础篇:05_关系
文章目录一对一一对多多对多将实体与实体之间的关系,反映到最终数据库表的设计上来:将关系分为三种:一对一、一对多(多对一)、多对多所有的关系都是指表与表之间的关系一对一A表中的一条记录最多匹配B表中的一条记录,反之亦然学生表: 姓名,性别,年龄,身高,体重,婚姻状况, 籍贯, 家庭住址,紧急联系人id姓名性别身高体重婚姻状况籍贯家庭住址紧急联系人表设计成以上这种形式:符合要求!其中姓名,性别,年龄,身高,体重属原创 2020-06-30 15:51:45 · 473 阅读 · 0 评论 -
MySQL基础篇:04_列属性
文章目录空属性列描述默认值主键真正约束字段的是数据类型(列类型),但是数据类型的约束很单一,需要有一些额外的约束来更加保证数据的合法性列属性有很多:NULL/NOT NULL、default、primary key、unique key、auto_increment、comment空属性两个值:NULL(默认的)和NOT NULL(不允许为空)虽然字段默认的都是基本为空,但是实际上在真实开发时,尽可能的要保证所有的数据都不应该为空:空数据没有意义;空数据没有办法参与运算;只要有任何一个字段允原创 2020-06-30 12:36:44 · 237 阅读 · 0 评论 -
MySQL基础篇:03_数据类型(列类型)
文章目录数据类型:对数据进行统一的分类,从系统的角度出发为了能够使用统一的方式进行管理:更好的利用有限的空间SQL中将数据类型分为3大类:数值类型、字符串类型、时间日期类型...原创 2020-06-29 14:33:10 · 413 阅读 · 0 评论 -
MySQL基础篇:02_SQL基本操作
文章目录库操作新增数据库查看数据库基本操作:CRUD将SQL的基本操作根据操作对象分为三类:库操作、表操作(字段操作)、数据操作库操作库操作:对数据库的增删改查新增数据库基本语法:create database 数据库名字 [库选项];库选项:用来约束数据库,分为两个选项(1)字符集:charset/character set 具体字符集:常见字符集UTF8与GBK(2)校对集:collate 具体校对集:数据比较的规则create database mydatabase原创 2020-06-29 09:31:17 · 311 阅读 · 0 评论 -
MySQL基础篇:01_相关概念
文章目录数据库基础什么是数据库数据库分类常见的数据库产品关系型数据库非关系型数据库关系型数据库 vs 非关系型数据库关系型数据库什么是关系型数据库关系型数据库的设计数据库基础什么是数据库数据库:database,存储数据的仓库数据库:高效的存储和处理数据的介质— 介质主要分为两种:磁盘和内存数据库分类基于存储介质的不同分类:关系型数据库(SQL)和非关系型数据库(NoSQL:N...原创 2020-04-07 19:25:44 · 335 阅读 · 0 评论
分享