当前位置:网站首页>MySQL查漏补缺(五)不熟悉的知识点
MySQL查漏补缺(五)不熟悉的知识点
2022-08-09 09:07:00 【胡乐天】
1. count(*)和count(列名)的区别
count(*):查询所有数据的行数
count(列名):查询该列存在的行数(若该列为null,则不记录该条记录)
2. union和union all的区别
union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
union all :对两个结果集进行并集操作,包括重复行,不进行排序;
3. 批量插入多句
insert into 表名(列名) select 列名 from 表名
4. 创建视图
create view 视图名 as select语句
注意:视图仅仅是用来查看存储在别处的数据的一种设施。不能用来新增、插入和删除。
5.触发器
触发器是MySQL响应delete、insert、update语句而自动执行的一条MySQL语句(或是位于begin和end语句之间的一组语句)。
5.1 创建触发器需要的信息
唯一的触发器名;
触发器关联的表;
触发器应该响应的活动(delete、insert或update);
触发器何时执行(处理之前 或 之后)
5.2创建触发器
触发器一般不用命令行进行创建(其实一般都不使用触发器这个东西,毕竟我工作了许久了,也没用过),以下展示使用navicat创建步骤
6.事务处理
6.1 概念
事务处理(transaction processing)可以用来维护数据库的完整性。它保证成批的MySQL操作要么完全执行,要么完全不执行。
不过并非所有的引擎都支持事务处理。其中MyISAM和InnoDB是两种最常使用的引擎。前者不支持明确的事务管理,而后者支持。
6.2术语
事务(transaction):指一组SQL语句。
回退(rollback):指撤销指定的SQL语句的过程。
提交(commit):指将未存储的SQL语句结果写入数据库表;
保留点(savepoint):指事务处理中设置的临时占位符(placeholder),你可以对他发布回退(与回退整个事务处理不同)。
6.3 事务SQL
-- 查询学校信息
select * from ed_school;
-- 开启一个事务
start transaction;
-- 删除所有的学校信息
delete from ed_school;
-- 查看学校信息
select * from ed_school;
-- rollback则为撤回sql语句,若为commit,则为提交sql数据
rollback;
-- 查看最终结果
select * from ed_school;
边栏推荐
猜你喜欢
随机推荐
100句话,是否会触动你?
往二维数组追加键值
支付宝小程序禁止页面弹性下拉或上拉
【CNN】白话迁移学习中域适应
【场景化解决方案】搭建数据桥梁,Dslink打通泛微系统连接流
[V&N2020 公开赛]内存取证
对于栈、递归的关系的理解
【GNN终身学习】2022 CVPR 终身图学习
SQL server中的数据类型
[漏洞复现]CVE-2018-12613(远程文件包含)
JVM进程诊断利器——Arthas
PID控制电机输出作为电机PWM占空比输入的理解
ctfshow-web入门 文件上传篇部分题解
Anaconda4.8.3介绍、安装及使用教程安装(win10)并修改Jupyter默认工作目录
CPU主频 外频 芯片组 倍频 cache FSB PCI简介
数据治理(四):数据仓库数据质量管理
Calendar类和Date类转换时区 && 部分时区城市列表
腾讯云服务器修改为root登录安装宝塔面板
无符号整数文法和浮点数文法
算术表达式求值演示