当前位置: 首页 > news >正文

MySQL存储过程、触发器 小例子

一、存储过程

  语法:  

    CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])

    BEGIN

      ...

    END

  参数:

   IN 输入参数

    表示该参数的值必须在调用存储过程的时候指定,在存储过程中修改该参数的值不能被返回,为默认值。

   OUT 输出参数

    该值可在存储过程内部被改变,并可返回。

   INOUT 输入输出参数

    调用时指定,并且可被改变和返回。

  

  小例子:

    

    

 

 二、触发器

    语法:

      CREATE TRIGGER <触发器名称>    --触发器必须有名字,最多64个字符,可能后面会附有分隔符.它和MySQL中其他对象的命名方式基本相象.
      { BEFORE | AFTER }                        --触发器有执行的时间设置:可以设置为事件发生前或后。
      { INSERT | UPDATE | DELETE }       --同样也能设定触发的事件:它们可以在执行insert、update或delete的过程中触发。
      ON <表名称>             --触发器是属于某一个表的:当在这个表上执行插入、 更新或删除操作的时候就导致触发器的激活. 我们不能给同一张表的同一个事件安排两个触发器。
      FOR EACH ROW      --触发器的执行间隔:FOR EACH ROW子句通知触发器 每隔一行执行一次动作,而不是对整个表执行一次。
      <触发器SQL语句>     --触发器包含所要触发的SQL语句:这里的语句可以是任何合法的语句, 包括复合语句,但是这里的语句受的限制和函数的一样。
                     --你必须拥有相当大的权限才能创建触发器(CREATE TRIGGER),如果你已经是Root用户,那么就足够了。这跟SQL的标准有所不同。

    

    小例子:

      1. INSERT 触发器

        student 表中增加学生记录之后,自动将记录增加到 borrowrecord 表中

        

        

        

        

        

    

      2.DELETE 触发器

        删除 student 表中的学生记录之后,自动将 borrowrecord 中的相应记录删除。

        

        

 

 

  

转载于:https://www.cnblogs.com/SZxiaochun/p/7405691.html

相关文章:

  • Linux历史及版本
  • Java面试宝典《转载》
  • Android 03 style简单介绍
  • 黑客学习之信息收集
  • 安卓屏幕旋转时,禁止Activity重新加载
  • Selenium发展史
  • scala一些符号含义总结
  • Java内部类详解
  • tomcat配置、resin配置、MySQL主从配置
  • 代理
  • NetBIOS主机名扫描工具nbtscan
  • python开启进程的两种方法
  • getsebool命令详解
  • ORACLE中Drop table cascade constraints之后果.
  • 中国人工智能学会通讯——智能语音技术与产业应用展望 1.1 智能语音技术的发展现状和挑战...
  • $translatePartialLoader加载失败及解决方式
  • 「面试题」如何实现一个圣杯布局?
  • 2017年终总结、随想
  • 2019年如何成为全栈工程师?
  • Android 架构优化~MVP 架构改造
  • ES6 ...操作符
  • Java Agent 学习笔记
  • miaov-React 最佳入门
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • Odoo domain写法及运用
  • Promise面试题2实现异步串行执行
  • python docx文档转html页面
  • spring cloud gateway 源码解析(4)跨域问题处理
  • XForms - 更强大的Form
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 短视频宝贝=慢?阿里巴巴工程师这样秒开短视频
  • 高度不固定时垂直居中
  • 官方解决所有 npm 全局安装权限问题
  • 基于 Babel 的 npm 包最小化设置
  • 开源SQL-on-Hadoop系统一览
  • 你不可错过的前端面试题(一)
  • 如何用vue打造一个移动端音乐播放器
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 正则表达式-基础知识Review
  • #include<初见C语言之指针(5)>
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (1)(1.11) SiK Radio v2(一)
  • (2.2w字)前端单元测试之Jest详解篇
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (LeetCode) T14. Longest Common Prefix
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (十六)一篇文章学会Java的常用API
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .net web项目 调用webService
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • /dev下添加设备节点的方法步骤(通过device_create)
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面