一个临时表被反复使用的时候,对这个临时表起一个别名,方便以后使用,就可以创建一个视图,别名就是视图的名称。视图只是一个虚拟的表,其中的数据是动态的从物理表中读出来的,所以物理表的变更回改变视图。

创建:

create view v1 as SQL

例如:create view v1 as select * from student where sid<10

创建后如果使用mysql终端可以看到一个叫v1的表,如果用navicate可以在视图中看到生成了一个v1的视图

再次使用时,可以直接使用查询表的方式。例如:select * from v1

修改:只能修改视图中的sql语句

alter view 视图名称 as sql

删除:

drop view 视图名称

当对某张表做增删改查的时候(之前后者之后),就可以使用触发器自定义关联行为。

修改sql语句中的终止符号 delimiter

before after 之前之后

本质上就是一堆sql的集合,然后给这个集合起个别名。和view的区别就是,视图是一个sql查询语句当成一个表。

方式:

1 msyql----存储过程,供程序调用

2 msyql---不做存储过程,程序写sql

3 mysql--不做存储过程,程序写类和对象(转化成sql语句)

创建方法:

-- 1 创建无参数的存储过程

-- delimiter //

-- create PROCEDURE p1()

-- BEGIN

-- select * from student;

-- insert into teacher(tname) VALUES('cccc');

-- end //

-- delimiter ;

-- 调用存储过程

为什么有了结果集,又要有out伪造返回的值?

因为存储过程中含有多个sql语句,无法判断所有的sql都能执行成功,利用out的特性来标识sql是否执行成功。

例如,如果成功标识为1 部分成功标识2 失败为3

存储过程中的事务:

事务:

被成为原子性操作。DML(insert,update,delete)语句共同完成,事物只和DML语句相关,或者锁只有DML才有事物。

事务的特点:

原子性 A :事务是最小单位,不可分割

一致性 C :事务要求所有dml语句操作的时候必须保证全部成功或者失败

隔离性 I : 事务A和事务B之间有隔离性

持久性 D : 是事务的保证,事务终结的标志(内存中的数据完全保存到硬盘中)

事务关键字:

开启事务:start transaction

事务结束 :end transaction

提交事务 :commit transaction

回滚事务 :rollback transaction

事务的基本操作

游标在存储过程中的使用:

动态的执行sql,数据库层面放置sql注入:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/yuan-x/p/12253062.html

mysql 视图触发器,MySql视图触发器存储过程详解相关推荐

  1. MySQL存储过程详解 mysql 存储过程

    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...

  2. mysql存储过程详解[转]

    mysql存储过程详解[转] 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功 ...

  3. mysql存储过程按区间_针对新手的MYSQL存储过程详解_CSDN_ChenF的博客-CSDN博客

    原文作者:橘左京i 原文标题:针对新手的MYSQL存储过程详解 发布时间:2021-02-22 10:03:18 一位爱好技术的橘右京的哥哥橘左京 前言:什么是存储过程?存储过程就像是一个接口,可以直 ...

  4. jdbc mysql 自动重连_JDBC实现Mysql自动重连机制的方法详解

    JDBC是Java程序连接和访问各种数据库的API,它可以提供Java程序和各种数据库之间的连接服务,下面是爱站技术频道小编为大家带来的JDBC实现Mysql自动重连机制的方法详解. 日志:using ...

  5. mysql主从同步默认延迟_减少mysql主从数据同步延迟问题的详解

    基于局域网的master/slave机制在通常情况下已经可以满足'实时'备份的要求了.如果延迟比较大,就先确认以下几个因素: 1. 网络延迟 2. master负载 3. slave负载 一般的做法是 ...

  6. MySQL数据库增删改查常用语句详解

    MySQL数据库增删改查常用语句详解 一 MySQL数据库表结构 1.1 常见数据类型 1.2 常用约束类型 1.3 MySQL存储引擎 二 DDL语句:数据定义语句 2.1 修改数据库密码 2.1. ...

  7. mysql8.0.20 64位安装教程_windows 64位下MySQL 8.0.15安装教程图文详解

    先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 配置系统环境变量 复制解压后的mysql到C盘或者其他磁盘下 我们去系统的环境变量的path里添加一个mysql的配置  指向my ...

  8. MySQL批量入库的几种方式详解

    MySQL批量入库的几种方式详解 1. MySQL批量入库概述 2. Hutool封装jdbc方式 3. Jdbc直接或批量执行方式 4. MyBatis批量入库方式 5. MySQL批量入库总结 1 ...

  9. mysql weekofmonth_深入mysql YEAR() MONTH() DAYOFMONTH()日期函数的详解

    深入mysql YEAR() MONTH() DAYOFMONTH()日期函数的详解 mysql的日期函数. 例子中当前日期:curdate() 是2013年6月24日. YEAR() :显示年mys ...

  10. MYSQL数据库连接字符串(connectionString)配置参数大全详解

    请参考原文:MYSQL数据库连接字符串(connectionString)配置参数大全详解

最新文章

  1. 思岚M2M1~SLAM方案~导航
  2. 【Android TV 开发】焦点处理 ( 父容器与子组件焦点获取关系处理 | 不同电视设备上的兼容问题 | 触摸获取焦点 | 按键获取焦点 )
  3. svn教程----TortoiseSVN客户端
  4. Altium Designer 18 怎么导出CAD文件
  5. Kali Linux 网络扫描秘籍 第六章 拒绝服务(一)
  6. 计算机网络 第一章 计算机网络和因特网
  7. 庖丁解Puppet之操作记实
  8. Net中的AOP系列之《方法执行前后——边界切面》
  9. OpenCV 3.0 CvMat and cv::Mat Conversion
  10. 变量的内部存储:引用和计数
  11. 利用单片机做手机连点器(附别踩白块自动点击程序)
  12. 电源的安规设计(2)
  13. win10家庭版不能保存关闭密码保护共享
  14. Web3.0:伟大的骗局,请无辜的各位做一个敢于大声说出来的孩子吧
  15. SwiftUI vs 故事板
  16. SOC 时钟源PLL锁相环详细介绍——IC设计时序逻辑的灵魂
  17. 微服务架构深度解析与最佳实践
  18. JAVA构造器、静态上下文的执行时机与代码执行顺序详解
  19. 单片机c语言编程编码器数值,基于单片机的光电编码器测速报告详解.doc
  20. XML简介,XML和HTML的区别,XML用处,XML规则,XML约束,XML语法,XML解析,DOM

热门文章

  1. 设备的阻塞与非阻塞操作
  2. 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址)
  3. 看博客学学Android(五)
  4. 设计模式之Facade(外观)模式
  5. 下1000个用户的云计算革命
  6. 加速IE的Javascript的方法
  7. javaweb学习总结(二十八)——JSTL标签库之核心标签
  8. 团购、定时抢购倒计时js版
  9. Hibernate常见问题集锦
  10. SUN JAVA面试笔试题2