mysql从5.0版本开始支持存储过程、存储函数、触发器和事件功能的实现。

我们以一本书中的例题为例:创建xscj数据库的存储过程,判断两个输入的参数哪个更大。并调用该存储过程。

(1)调用

首先,创建存储过程(procedure),名为xscj.compar

delimiter $$

create procedure xscj.compar

(in k1 integer, in k2 integer, out k3 char(6) )

beginif k1>k2 thenset k3='大于';

elseif k1=k2 thenset k3='等于';else

set k3='小于';

endif;

end$$

delimiter ;

执行结果如下:

在上边的语句中:

create 语句是创建存储过程,下行表示的是存储过程参数,in 表示输入参数, out 表示输出参数,inout 表示输入/输出参数,@表示用户变量;

If 语句是流程控制语句,当条件为真,执行对应的SQL语句;

在代码的前一部分,因为在mysql中,服务器处理语句的时候是以分号为结束标志的,但是在创建存储过程的时候,存储过程可能包含多个SQL语句,每个SQL语句都是以分号为结尾的,这时服务器处理程序的时候遇到第一个分号就会认为程序结束,这肯定是不可行的。因此在使用"delimiter+结束符"的命令将MYSQL语句的结束标志修改为其他符号,最后在使用'opdelimiter ;'恢复以分号为结束标志。

存储过程创建完后,可以在程序、触发器或者其他存储过程中被调用,但是都必须使用CALL语句。

(2)删除

仍然使用drop语句

drop procedure if exists 过程名

(3)修改

可以使用

alter procedure 存储过程 [特征...]

来修改存储过程的某些特征;但是如果要修改存储过程的内容,可以使用先删除再重新定义存储过程的方法。

mysql 存储过程 对象_【MYSQL笔记3】MYSQL过程式数据库对象之存储过程的调用、删除和修改...相关推荐

  1. mysql实验九_实验十--- MySQL过程式数据库对象

    实验十MySQL过程式数据库对象 一.实验内容: 1. 存储过程的创建和调用 2. 存储函数的创建和调用 3. 触发器的创建和触发 4. 事件的创建和修改 一.实验项目:员工管理数据库 用于企业管理的 ...

  2. mysql 的事件_一文总结MySQL数据库事件--定时任务实现方式

    由于最近在做某些日志表的清理工作,会用到定时任务,所以这里也简单介绍一下mysql如何用事件来实现定时任务. 后面会介绍两个日志表清理实现方案,一种是传统的定时delete,另一种会稍微复杂点,主要是 ...

  3. mysql实验3_MySQL实验(三) 过程式数据库对象的使用

    一.目的与要求 (1)掌握存储过程创建和调用的方法: (2)掌握MySQL中程序片段的组成: (3)掌握游标的使用方法: (4)掌握存储函数创建和调用的方法: (5)掌握触发器的使用方法: (6)掌握 ...

  4. 2021-08-18MySQL 第六章过程式数据库对象.23存储函数,触发器

    6.2 存储函数 6.2.1 创建存储函数     create function语法如下: create function 存储过程名([参数...]) returns type [特征...] 存 ...

  5. python mysql in语句_基于Python的mysql语句入门学习笔记

    MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用 ...

  6. mysql创建存储过程意义_浅谈一下mySql中创建存储过程

    首先说一下为什么要使用存储过程,存储过程是在数据库中预编译的程序代码,其执行效率显然要比从程序端传过去的sql语句要高的多,这样既可以节省网络带宽,又可以加快sql的执行速度,可以很好的提高系统的性能 ...

  7. mysql客户端工具_性能优化-理解 MySQL 体系结构(MySQL分库分表)

    实例和数据库 我们通常所说的 MySQL 数据库服务器由一个实例(instance)以及一个数据库(database)组成.实例包括一组后台进程/线程和许多内存结构,用于管理数据库:数据库由一组磁盘文 ...

  8. mysql grant用法_十六、MySQL授权命令grant的使用方法

    MySQL 赋予用户权限命令的简单格式可概括为: grant权限 on数据库对象 to用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grantselecton ...

  9. spring连接mysql出现问题_使用spring连接mysql数据库出错

    最近在学习spring框架,但是在学到JdbcTemplate时连接数据库一直报错,百度谷歌各种查找都能没有解决问题,简直要癫狂,报错信息如下: org.springframework.jdbc.Ca ...

  10. mysql架构组成_第 2 章 MySQL 架构组成

    麻雀虽小,五脏俱全.MySQL 虽然以简单著称,但其内部结构并不简单.本章从MySQL物理组成.逻辑组成,以及相关工具几个角度来介绍 MySQL 的整体架构组成,希望能够让读者对 MySQL 有一个更 ...

最新文章

  1. MySQL 慢查询日志分析及可视化结果
  2. 利用深度学习的点云语义分割(一)
  3. android界面实现框架内页面跳转_KVM虚拟化管理平台的实现
  4. Linux下的绘图(流程图、UML、mindmap)工具
  5. VB利用资源文件进行工作
  6. FIFO算法与LRU算法
  7. ArcCatalog添加数据库连接
  8. Tims中国上市背后:以新流派打法,“开源”咖啡市场
  9. C#数据Encrypt加密Encrypt解密的算法使用
  10. 技术美术知识学习_04:PBR的个人理解
  11. Python总结-学习方向和方法
  12. python3.6怎么保存_python 保存数据单文件_python3.6 单文件爬虫 断点续存 普通版 文件续存方式...
  13. 【论文阅读】SCRDet++
  14. 景联文科技:为扫地机器人AI训练提供数据采集标注解决方案
  15. MATLAB错误使用 surf (第 71 行) X、Y、Z 和 C 不能是复数。解决办法。
  16. 8102秋季校招:我的校招经历+Android岗总结(面经+技巧)
  17. 基于Spring Cloud Gateway 和 注册中心实现灰度发布
  18. 前端转安卓开发!妈妈再也不用担心我的面试,满满干货指导
  19. mysql数据库有merge into 吗
  20. 【Python军火库】pyautogui:成熟的鼠标和键盘自己动起来!

热门文章

  1. 2010年中国城市人均GDP排名
  2. wpa_supplicant 使用
  3. 如何用计算机完成一篇文稿制作手写作业,怎样把手写作文快速弄成电子版
  4. MB/s MiB/s之间换算
  5. JavaScript验证手机号码、电子邮箱格式
  6. 3d打印计算机设计打孔操作,干货:3D打印,建模时你需要注意这10个技巧
  7. MySQL中以日期为查询条件的方法
  8. 佛系前端面试题记录--第五周
  9. 鸿蒙系统背后的故事,华为“鸿蒙”刷屏背后,这7本书是中国人的终极浪漫
  10. Wintel做不了“山寨机顶盒”的救星