数据库-MySQL之数据库必知必会22-26章

第 22 章 使用视图

视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索数据的查询。
在这里插入图片描述
使用视图
视图用CREATE VIEW语句来创建。
使用SHOW CREATE VIEW viewname;来查看创建视图的语句。
用DROP删除视图,其语法为DROP VIEW viewname;。
更新视图时,可以先用DROP再用CREATE,也可以直接用CREATE OR REPLACE VIEW。如果要更新的视图不存在,则第2条更新语句会创建一个视图;如果要更新的视图存在,则第2条更新语句会替换原有视图。
利用视图简化复杂的联结
可以将复杂联结创建为视图 然后在视图中进行操作

第23章 使用存储过程

  1. 经常会有一个完整的操作需要多条语句才能完成。执行这个操作需要针对许多表的多条MySQL语句。此外,需要执行的具体语句及其次序也不是固定的可以创建存储过程。
  2. 存储过程有3个主要的好处,即简单、安全、高性能
  3. MySQL执行存储过程的语句为CALL。CALL接受存储过程的名字以及需要传递给它的任意参数。
    在这里插入图片描述

创建存储过程

示例:
在这里插入图片描述

删除存储过程

在这里插入图片描述

使用参数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
onumber定义为IN,因为订单号被传入存储过程。ototal定义
为OUT,因为要从存储过程返回合计。

建立智能存储过程

使用IF语句
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
–为注释

第24章 使用游标

需要在检索出来的行中前进或后退一行或多行。这就是使用游标的原因。游标(cursor)是一个存储在MySQL服务器上的数据库查询,它不是一条SELECT语句,而是被该语句检索出来的结果集。在存储了游标之后,应用程序可以根据需要滚动或浏览其中的数据
游标的使用步骤
在这里插入图片描述
创建游标
在这里插入图片描述
这个存储过程并没有做很多事情,DECLARE语句用来定义和命
名游标,这里为ordernumbers。存储过程处理完成后,游标就
消失(因为它局限于存储过程)。

第25章 使用触发器

想要某条语句(或某些语句)在事件发生时自动执行,shiy

 唯一的触发器名;
 触发器关联的表;
 触发器应该响应的活动(DELETEINSERTUPDATE);
 触发器何时执行(处理之前或之后)。

在这里插入图片描述
只有表才支持触发器,视图不支持(临时表也不支持)

不同触发器的原理

INSERT触发器
在INSERT触发器代码内,可引用一个名为NEW的虚拟表,访问被插入的行;
 在BEFORE INSERT触发器中,NEW中的值也可以被更新(允许更改被插入的值);
 对于AUTO_INCREMENT(自增)列,NEW在INSERT执行之前包含0,在INSERT执行之后包含新的自动生成值
DELETE触发器
在DELETE触发器代码内,你可以引用一个名为OLD的虚拟表,访问被删除的行;OLD中的值全都是只读的
UPDATE触发器
 在UPDATE触发器代码中,你可以引用一个名为OLD的虚拟表访问以前(UPDATE语句前)的值,引用一个名为NEW的虚拟表访问新更新的值;
 在BEFORE UPDATE触发器中,NEW中的值可能也被更新(允许更改将要用于UPDATE语句中的值);
 OLD中的值全都是只读的,不能更新。

第 26 章 管理事务处理

InnoDB支持事务处理
事务处理(transaction processing)可以用来维护数据库的完整性,它保证成批的MySQL操作要么完全执行,要么完全不执行。
概念

  • 事务(transaction)指一组SQL语句;
  • 回退(rollback)指撤销指定SQL语句的过程;
  • 提交(commit)指将未存储的SQL语句结果写入数据库表;
  • 保留点(savepoint)指事务处理中设置的临时占位符(placeholder),你可以对它发布回退(与回退整个事务处理

控制事务处理

事务开始
在这里插入图片描述
ROLLBACK
回退从某一点到Rolllback的所有操作
使用COMMIT
在这里插入图片描述

使用事务处理块来
保证订单不被部分删除。最后的COMMIT语句仅在不出错时写出更改。如
果第一条DELETE起作用,但第二条失败,则DELETE不会提交
使用保留点
回退部分事务处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/194039.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开发猿的平平淡淡周末---2023/12/3

2023/12/3 天气晴 温度适宜 AM 早安八点多的世界,起来舒展了下腰,阳光依旧明媚,给平淡的生活带来了一丝暖意 日常操作,喂鸡,时政,洗漱,恰饭,肝会儿游戏 看会儿手机 ___看累…

数据结构 | 查漏补缺之ASL、

目录 ASL 情形之一:二分查找 线索二叉树 哈夫曼树 大根堆 邻接表&邻接矩阵 ASL 参考博文 关于ASL(平均查找长度)的简单总结_平均查找长度asl-CSDN博客 情形之一:二分查找 线索二叉树 参考博文 线索二叉树(线索链表遍历,二叉树…

大数据基础设施搭建 - 数据装载

文章目录 一、概述二、数据装载(HDFS -> Hive)2.1 创建Hive表2.1.1 业务全量表建表语句2.1.2 业务增量表建表语句2.1.3 流量增量表建表语句 2.2 数据装载2.2.1 初始化装载省份和地区表2.2.2 每日装载业务数据(1) 开发脚本&…

【场景测试用例】登录

测试思路: UI 不同浏览器,不同系统的手机设备外观和布局保持一致用户友好性 错误提示搜索历史和自动补全回车失焦输入建议功能 验证登录功能 输入正确的用户名,密码/短信验证码可点击登录按钮必填项未输入,登录按钮置灰不可点击/…

Unity中Shader指令优化

文章目录 前言解析一下不同运算、条件、函数所需的指令数1、常数基本运算2、变量基本运算3、条件语句、循环 和 函数 前言 上一篇文章中,我们解析了Shader解析后的代码。我们在这篇文章中来看怎么实现Shader指令优化 Unity中Shader指令优化(编译后指令…

什么是事务?事务的特性是什么?

一、概念 事务是并发控制的单位,是用户定义的一个操作序列。 二、特性 事务具有四大特性:原子性、一致性、隔离性、持久性 原则性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么全做,要么全不做。 一致性&a…

【深度学习实验】图像处理(四):PIL——自定义图像数据增强操作(图像合成;图像融合(高斯掩码))

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 导入必要的库1. PIL基础操作2~4. 随机遮挡、随机擦除、线性混合5. 图像合成5.1 原理5.2 实现5.3 效果展示 6. 图像融合6.1 原理6.2 实现6.3 效果展示 一、实验介绍 在深度学习任务中&#xff0c…

csapp-linklab

超详细csapp-linklab之第一阶段“输出学号”实验报告-CSDN博客 csapp-linklab之第二阶段“输出学号”实验报告-CSDN博客 csapp-linklab之第3阶段“输出学号”实验报告(强弱符号)-CSDN博客 csapp-linklab之第4阶段“输出学号”实验报告(swi…

wordpress主题的后台Settings API 和 Theme Customizer API开发部分

先看两个概念Settings API和Theme Customizer API Settings API和Theme Customizer API是WordPress提供的用于处理主题和插件设置的工具。它们分别用于不同的场景和目的,但都旨在简化在WordPress仪表板中添加设置和选项的过程。 Settings API Settings API主要用…

java_基础——ArrayList

1.ArrayList构造方法和添加方法 方法名说明public ArrayList创建一个空的集合对象public boolean add(E e)将指定的元素追加到此集合的末尾public void add(int index,E element)在此集合的指定位置插入指定的元素 import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_O…

MySQL进阶_EXPLAIN重点字段解析

文章目录 第一节.准备1.1 版本信息1.2 准备 第二节.type2.1 system2.2 const2.3 eq_ref2.4 ref2.5 ref_or_null2.6 index_merge2.7 unique_subquery2.8 range2.9 index2.10 all 第三节. Extra3.1 No tables used3.2 No tables used3.3 Using where3.4 No matching min/max row3…

【数据结构高阶】AVL树

上期博客我们讲解了set/multiset/map/multimap的使用,下面我们来深入到底层,讲解其内部结构: 目录 一、AVL树的概念 二、AVL树的实现 2.1 节点的定义 2.2 数据的插入 2.2.1 平衡因子的调整 2.2.1.1 调整平衡因子的规律 2.2.2 子树的旋…

JavaEE 多线程

JavaEE 多线程 文章目录 JavaEE 多线程引子多线程1. 特性2. Thread类2.1 概念2.2 Thread的常见构造方法2.3 Thread的几个常见属性2.4 启动一个线程2.5 中断一个线程2.6 等待一个线程2.7 获取当前线程引用2.8 休眠当前线程 3. 线程状态 引子 当进入多线程这一块内容时&#xff…

2023-12-03 LeetCode每日一题(可获得的最大点数)

2023-12-03每日一题 一、题目编号 1423. 可获得的最大点数二、题目链接 点击跳转到题目位置 三、题目描述 几张卡牌 排成一行,每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。 每次行动,你可以从行的开头或者末尾拿一张卡牌&#x…

【Python/Java/C++三种语言】20天拿下华为OD笔试之【哈希表】2023B-单词接龙【欧弟算法】全网注释最详细分类最全的华为OD真题题解

文章目录 题目描述与示例题目描述输入描述输出描述示例一输入输出说明 示例二输入输出说明 解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 单词接龙的规则是: 可用于接龙的单词首字母必须要前一个单词的…

虚拟机扩容磁盘/dev/mapper/centos-root

虚拟机扩容磁盘/dev/mapper/centos-root 1. 在虚拟机管理界面增加磁盘大小或添加磁盘 2. 扩容操作 lsblk -l # 下面/dev/sdb 每个人的可能不同,有/dev/sda 或 /dev/sdc,根据实际更改 fdis /dev/sdb m n p 1 回车 回车 wfdisk -l pvdisplay pvcrea…

Vue.js中v-if 和 v-show 的区别

1、v-if: v-if 指令是 Vue.js 中的一个条件渲染指令。 当 v-if 的条件为 false 时,元素及其内容将从 DOM 中完全移除。 适用于你期望大部分时间条件为 false,或者当你希望通过完全移除元素来节省资源时。 2、v-show: v-show 指令同样也是一个条件渲染…

信息流广告行为兴趣定向底层逻辑算法

行为兴趣定向 1: 行为兴趣的背后是计划的数据 行为是用户在平台的动作:点赞、评论、分享、点击、下单、成交等,用户发生过的标签 兴趣不一定发生,我有打高尔夫的兴趣,但是从来没打过,因为穷 系统会根据用户的行为标…

C++STL中的string容器

string 容器基本概念 C 风格字符串 ( 以空字符结尾的字符数组 ) 太过复杂难于掌握,不适合大程序的开发, 所以 C 标准库定义了一种 string 类,定义在头文件。 String 和 c 风格字符串对比: u Char*是一个指针, …

【C++ Primer Plus学习记录】第5章编程练习

1.编写一个要求用户输入两个整数的程序。该程序将计算并输出这两个整数之间(包括这两个整数)所有整数的和。这里假设先输入较小的整数。例如,如果用户输入的是2和9,则程序将指出2~9之间所有整数的和为44。 //5.9 1 #if 1 #includ…