IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL--触发器与视图 -> 正文阅读

[大数据]MySQL--触发器与视图

触发器

触发器是一种特殊的存储过程,发生DML操作时自动执行的操作,例如日志的记录:

添加、查看与删除

语法:
create trigger + 触发器名
< before | after> 定义触发时机
<insert | delete | update> 定义DML操作类型
on <tb_name>
for each row//声明为行级操作,影响一行则触发一次
begin
-- sql语句如果只有一句则可以不写begin和end
end;
例子:
create trigger tri_text
after insert on students
for each row//行级操作
insert into stulogs(time,log_text) value(now(),concat('添加',NEW.stu_num,'学生信息'));
show triggers;//查看触发器
drop trigger +触发器名;//删除触发器

NEW

update、insert中NEW表示更新、插入后的数据

OLD

update、delete中OLD表示更新、删除前的数据

触发器使用总结

优点

  • 触发器是?动执?的,当对触发器相关的表执?响应的DML操作时?即执?;
  • 触发器可以实现表中的数据的级联操作(关联操作),有利于保证数据的完整性;
  • 触发器可以对DML操作的数据进?更为复杂的合法性校验

缺点

  • 使?触发器实现的业务逻辑如果出现问题将难以定位,后期维护困难;
  • ?量使?触发器容易导致代码结构杂乱,增加了程序的复杂性;
  • 当触发器操作的数据量?较?时,执?效率会??降低。

建议

  • 在互联?项?中,应避免适应触发器;
  • 对于并发量不?的项?可以选择使?存储过程,但是在互联?引?中不提倡使?存储过
    程(原因:存储过程时将实现业务的逻辑交给数据库处理,?则增减了数据库的负载,
    ?则不利于数据库的迁移)

视图

视图的概念

视图,就是 由数据库中?张表或者多张表根据特定的条件查询出得数据构造成得 虚拟表

视图的作用

  • 安全性:如果我们直接将数据表授权给?户操作,那么?户可以CRUD数据表中所有数
    据,加?我们想要对数据表中的部分数据进?保护,可以将公开的数据?成视图,授权
    ?户访问视图;?户通过查询视图可以获取数据表中公开的数据,从?达到将数据表中
    的部分数据对?户隐藏。
  • 简单性:如果我们需要查询的数据来源于多张数据表,可以使?多表连接查询来实现;
    我们通过视图将这些连表查询的结果对?户开放,?户则可以直接通过查询视图获取多
    表数据,操作更便捷。

创建视图

语法:

create view <view_name>
AS
select查询语句

视图数据特性

查询操作:如果在数据表中添加了新的数据,?且这个数据满?创建视图时查询语句的条
件,通过查询视图也可以查询出新增的数据;当删除原表中满?查询条件的数据时,也会从
视图中删除。
新增数据:如果在视图中添加数据,数据会被添加到原数据表
删除数据:如果从视图删除数据,数据也将从原表中删除
修改操作:如果通过修改数据,则也将修改原数据表中的数据
视图的使?建议 : 对复杂查询简化操作,并且不会对数据进?修改的情况下可以使?视图。

查询视图结构

desc + 视图名;

修改视图

方式一:

create or replace view + 视图名 AS + 搜索语句;

方式二:

alter view + 视图名 AS + 搜索语句;

删除视图

drop view + 视图名;

不同于删除视图数据,删除整个视图时,不会删除表中数据。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:30:00  更:2022-07-17 16:30:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 20:51:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码