一.创建存储过程

create procedure sp_name()

begin

.........

end

二.调用存储过程

1.基本语法:call sp_name();

注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递

三.删除存储过程

1.基本语法:

drop procedure sp_name;

2.注意事项

(1)不能在一个存储过程中删除另一个存储过程,只能调用另一个存储过程

四.其他常用命令

1.show procedure status;

显示数据库中所有存储的存储过程基本信息,包括所属数据库,存储过程名称,创建时间等

2.show create procedure [sp_name];

显示某一个MySQL存储过程的详细信息

  • 格式

    MySQL存储过程创建的格式:CREATE PROCEDURE 过程名 ([过程参数[,...]])

    [特性 ...] 过程体

    其中:

    MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:

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

    IN 输入参数:表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值(修改该值会参与运算,但存储过程执行结束后,该值还是初始值)

    OUT 输出参数:该值可在存储过程内部被改变,并可返回

    INOUT 输入输出参数:调用时指定,并且可被改变和返回

  • 创建存储过程例子

mysql> DROP PROCEDURE IF EXISTS calc_param;
mysql> DELIMITER $$
mysql> CREATE PROCEDURE calc_param(IN p_in int, OUT p_out int)
BEGIN
select p_in;
set p_in=2;
set p_out=p_in*2;
select p_out;
select * from student;
END $$
mysql> DELIMITER ;
mysql> set @p_in=1;
mysql> set @p_out=5;
mysql> call calc_param(@p_in,@p_out);
mysql> select @p_in;
mysql> select @p_out;

mysql 存储过程知识点的更多相关文章

  1. MySQL 存储过程实例 与 ibatis/mybatis/hibernate/jdbc 如何调用存储过程

    虽然MySQL的存储过程,一般情况下,是不会使用到的,但是在一些特殊场景中,还是有需求的.最近遇到一个sql server向mysql迁移的项目,有一些sql server的存储过程需要向mysql迁 ...

  2. mysql常见知识点总结

    mysql常见知识点总结 参考: http://www.cnblogs.com/hongfei/archive/2012/10/20/2732516.html https://www.cnblogs. ...

  3. MySQL——存储过程

    核心知识点: 1.什么存储过程?它都有哪些优点? 2.存储过程的语法和参数? 3.存储过程有哪些操作? 4.存储过程常用的控制语句? 一.存储过程概论 SQL语句需要先编译然后执行,而存储过程是一组为 ...

  4. MYSQL进阶学习笔记四:MySQL存储过程之定义条件,处理过程及存储过程的管理!(视频序号:进阶_11,12)

    知识点五:MySQL存储过程之定义条件和处理过程及存储过程的管理(11,12) 定义条件和处理: 条件的定义和处理可以用来定义在处理过程中遇到的问题时相应的处理步骤. DECLARE CONTINUE ...

  5. MYSQL进阶学习笔记二:MySQL存储过程和局部变量!(视频序号:进阶_4-6)

    知识点三:MySQL存储过程和局部变量(4,5,6) 存储过程的创建:     创建存储过程的步骤: 首先选中数据库 改变分隔符,不让分号作为执行结束的标记.(通常情况下,改变分隔符命令 DELIMI ...

  6. 面试官突然问我MySQL存储过程,我竟然连基础都不会!(详细)

    所有知识体系文章,GitHub已收录,欢迎Star!再次感谢,愿你早日进入大厂! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual ...

  7. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  8. MySQL存储过程(转)

    一.MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b" ...

  9. MySql存储过程

    MySQL 存储过程 ```sql CREATE PROCEDURE myprocedure (IN para01 INTEGER) BEGIN DECLARE var01 CHAR(10); IF ...

随机推荐

  1. 双机热备(准)-->RAC(夭折)-->DG(异地容灾)

    以下有的地方为oracle专业术语,非懂勿喷.前段时间某项目负责人告知,他们应用需要一套oracle数据库环境运行模式为双机热备.简单了解下对于现在已经非常成熟的RAC再合适不过了.详细问了问当前服务 ...

  2. 通过一个uri获取一个Bitmap对象

    Android 开发过程中,可能会用到的,通过一个uri获取一个Bitmap对象 private Bitmap getBitmapFromUri(Uri uri){  try  {   // 读取ur ...

  3. Vue--Vue.nextTick()的使用

    Vue.nextTick()是比较常用到的API Vue官网对它的解释是:在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 首先要明白Vue的响应式 ...

  4. Python的数据类型2列表

    Python的数值类型List,也就是列表 Python的列表比较类似与其他语言的数组概念,但他又与其他语言数组的概念有很大的不同 C语言.Java的数组定义是这样的,存储多个同类型的数值的集合就叫数 ...

  5. python dict sorted 排序

    https://www.cnblogs.com/linyawen/archive/2012/03/15/2398292.html 我们知道Python的内置dictionary数据类型是无序的,通过k ...

  6. hadoop redis install (4)

    reference: http://dblab.xmu.edu.cn/blog/131/    https://github.com/dmajkic/redis   https://blog.csdn ...

  7. FormShortCut MainForm 和 二级FORM

    发现,主FORM 定义的快捷键,在二级FORM里也有效. 反过来,就无效. 这样的话,就要考虑 快捷键的冲突问题 了,本来以为不同的FORM 是独立的. http://codeverge.com/em ...

  8. C中预编译详解

    预处理过程扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器.可见预处理过程先于编译器对源代码进行处理.在C 语言中,并没有任何内在的机制来完成如下一些功能:在编译时包含其他源文件.定义宏.根 ...

  9. HDU 3829

    http://acm.hdu.edu.cn/showproblem.php?pid=2970 P个小朋友喜欢猫讨厌狗,喜欢狗讨厌猫,移除一定数量的猫狗,使开心的小朋友数量最多 二分图最大独立集=顶点数 ...

  10. sql,去重

    distinct SELECT distinct nf FROM BSHGJJK.T_JJ_NY_QSNCJBQK order by nf desc 来自为知笔记(Wiz)