视图的特点

视图只是一种逻辑对象,是一种虚拟表,它并不是物理对象,因为视图不占物理存储空间,在视图中被查询的表称为视图的基表,大多数的select语句都可以用在创建视图中

优点:集中用户使用的数据,掩码数据的复杂性,简化权限管理以及为向其他应用程序输出而重新组织数据等等

语法:  create view view_name [(column[,...n])]

     with encryption

     as select_statement

     with check option

存储过程的特点

存储过程是存储在服务器上的一组预编译的Transact-SQL语句,存储过程是一种封装重复任务操作的一种方法,支持用户提供的变量,具有强大的编程功能

优点:与其他应用程序共享应用程序的逻辑,因此确保一致的数据访问和操纵

  提供一种安全机制

   加速存储过程的执行,提高系统的性能

   减少网络交通

存储过程的类型:系统存储过程、本地存储过程、临时存储过程、远程存储过程和扩展存储过程。不同类型的存储过程具有不同的作用

语法:    create procedure procedure_name

     @parameter data_type

      with{recompile|encryption|recompile,encryption}

       as sql_statement

执行存储过程有两种方法:

方法一:直接执行存储过程,就是调用execute语句来执行存储过程

方法二:在insert语句中执行存储过程

触发器的特点

当有操作影响到触发器保护的数据时,触发器就自动发生,因此,触发器是在特定表上进行定义的,该表也称为触发器表,也是一种特殊类型的存储过程,与存储过程的区别:存储过程可以由用户直接调用执行,但是触发器不能被直接调用执行

触发器的类型:insert类型,update类型,delete类型

语法:   create trigger trigger_name

    on {table |view}

    with encryprion

    {for|after|instead of}{[delete][,][insert][,][update]}

    as sql _statement

工作原理:

(insert)当向表中插入数据时,insert触发器触发执行,当insert触发器触发时,新的记录增加到触发器表中和inserted表中。触发器可以检查inserted表,来确定该触发器的操作是否应该执行和如何执行,在inserted表中的那些记录,总是触发器表中一行或多行记录的冗余;

(delete)当触发一个delete触发器时,被删除的记录房子一个特殊的deleted表中。deleted表是一个逻辑表,用来保存已经从表中删除的记录;

(update)修改一条记录就等于插入一条新记录和删除一条旧记录,当在某一个update触发器表的上面修改一条记录时,表中原来的记录移动到deleted表中,修改过的记录插入到了inserted表中,触发器可以检查deleted表和inserted表以及被修改的表。

一个触发器实例:

一般地,开发触发器的过程包括用户需求分析,确定触发器的逻辑结构,编写触发器代码和测试触发器

转载于:https://www.cnblogs.com/insane-Mr-Li/p/10102611.html

视图、存储过程、触发器讲解相关推荐

  1. mysql视图存储过程触发器

    以下笔记借鉴于黑马MYSQL视频,记录为个人学习笔记参考. 包含视图/存储过程/触发器等概念 目录 视图 view 语法 视图的检查选项 视图更新 作用 存储过程 procedure 语法 变量 系统 ...

  2. 关系数据库——视图/存储过程/触发器

    视图 视图是虚拟的表,与包含数据的表不同,视图只包含使用时动态检索数据的查询,主要是用于查询. 为什么使用视图 重用sql语句 简化复杂的sql操作,在编写查询后,可以方便地重用它而不必知道他的基本查 ...

  3. 【MySQL | 进阶篇】05、MySQL 视图、触发器讲解

    目录 一.视图 1.1 介绍 1.2 语法 1.2.1 演示示例 1.3 检查选项 1.3.1 CASCADED 级联 1.3.2 LOCAL 本地 1.3.3 示例演示 1.4 视图的更新 1.4. ...

  4. mysql 事务 视图 存储过程 触发器

    一 ,mysql事务 MYSQL中只有INNODB类型的数据表才能支持事务处理. 启动事务有两种方法 (1) 用begin,rollback,commit来实现 begin 开始一个事务rollbac ...

  5. 【MySQL数据库笔记 - 进阶篇】(四)视图/存储过程/触发器

    ✍个人博客:https://blog.csdn.net/Newin2020?spm=1011.2415.3001.5343

  6. mysql七:视图、触发器、事务、存储过程、函数

    阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名 ...

  7. oracle删除所有触发器的命令,Oracle删除当前用户的所有对象(表、视图、触发器、存储过程、函数)...

    Oracle删除当前用户的所有对象(表.视图.触发器.存储过程.函数) 1. DECLARE TYPE name_list IS TABLE OF VARCHAR2(40); TYPE type_li ...

  8. mysql存储过程输入参数拆分_一文看懂mysql数据库存储过程、函数、视图、触发器、表...

    概述 抽空总结一下mysql的一些概念性内容,涉及存储过程.函数.视图.触发器等. 一.查看存储过程.函数.视图.触发器.表 1.存储过程 select * from mysql.proc where ...

  9. MySQL表/视图/存储过程and函数/触发器/事件与数据库之间的关系

    mysql中的数据库包含表.视图.存储过程and函数.触发器.以及事件. 数据库: 数据库是存放数据的仓库.数据库中的数据不是直接存在数据库中,而是存在数据库的表中 表(table): 表是数据库中存 ...

最新文章

  1. windows10 + Anaconda搭建tensorflow-gpu环境
  2. 为什么CTRIP 网站页面中要把小图做在一起的原因.---减少HTML 链接数.
  3. java考试填空题_Java常用考试(填空题)
  4. python class def 格式_Python symbol.classdef方法代码示例
  5. ORACLE备份策略(ORACLE BACKUP STRATEGY)
  6. quartz的负载均衡
  7. Visual.Basic.2008编程参考手册
  8. cisco命令学习,每天加一点
  9. 【脑经急转弯】—— 猜额头上的数字
  10. 埃氏筛法求质数(例如:200以内的质数)
  11. Mschart应用。
  12. 如何使用计算机蓝牙设备管理器,电脑蓝牙bluetooth怎么使用_win7蓝牙bluetooth使用教程-系统城...
  13. ae效果英文版翻译对照表_AE自带特效中英文对照表
  14. 数据结构与算法分析(七)递归
  15. 微信支付失败中关于“签名错误”的解决方案
  16. 关于DCDC选型OVP的经验
  17. JavaScript 练手小技巧:页面高亮操作提示和蒙板
  18. 基于Python的多元线性回归分析
  19. Android项目模拟器提示:Unfortunately,XXX has stopped?
  20. parrallel for matlab,[转载]MATLAB并行计算工具箱 -- Paralleln

热门文章

  1. Native Instruments Komplete Start WiN-MAC 免费的音源套装
  2. 网络工程师真的吃香吗?
  3. 医疗仪器中几种常用图形系统
  4. mysql的tcl语句_初识数据库(TCL语句)
  5. 管道内壁城市建设用食品级环氧树脂底漆 漆膜坚韧耐久
  6. Vegas修剪器窗口的使用介绍
  7. Nginx html嵌入php被注释
  8. 简单神经网络训练模型(pima-indians-diabetes)
  9. C语言文件缓冲区作用,C语言 文件操作4--文件结构体FILE的理解以及缓冲区再讲...
  10. 2020年中国研究生数学建模竞赛E题——探索大雾演化规律,预测大雾变化趋势