创建与调用。

1.无参创建

2.有参创建

3.结果集与out

4.python的调用

1.无参创建

delimiter //

create procedure p1()

BEGIN

select * from t1;

Insert into teacher(tname) values("ct");

END//

delimiter ;

call p1()

cursor.callproc('p1') -- 程序里调用

2.有参创建

delimiter //

create procedure p1(

in in1 int,

in in2 int,

out r1 int,

inout i3 int

)

BEGIN

DECLARE temp1 int;

DECLARE temp2 int default 0;

set temp1 = 1;

set r1 = i1 + i2 + temp1 + temp2;

set i3 = i3 + 100;

end//

delimiter ;

call p2(12,2)

cursor.callproc('p2',(12,2)) -- 程序里调用

3.结果集与out

set @v1=0;        --全局变量 引用

call p2(12,@v1)

@v1                  --外部可以获取到,并已经修改了。

cursor.execute('select  @_p2_0,@_p2_1')

r2=cursor.fetchall()

cursor.callproc('p3',(12,2))

r1=cursor.fetchall()

4.python的调用

import pymysql

conn=pymysql.connect(host="localhost",user='root',password='',database='frist')

cursor=conn.cursor()

cursor.callproc('p1')

cursor.commit()

result=cursor.fetchall() # 返回结果集

cursor.close()

conn.close()

MySQL实验7存储过程_mySQL(7)-存储过程相关推荐

  1. mysql 过程和函数_MySQL:存储过程和函数

    变量 系统变量 变量由系统提供,不是用户自定义的,属于服务器层面 全局变量 会话变量 # 如果是全局级别,则需要加global,如果是会话级别,则需要加session,如果不写,则默认是会话 # 查看 ...

  2. navicat 怎么调试存储过程_Mysql调试存储过程最简单的方法

    以前同事告诉我用临时表插入变量数据来查看,但是这种方法过于麻烦,而且Mysql没有比较好的调试存储过程的工具.今天google了下发现可以用select + 变量名的方法来调试...真是让我汗颜啊. ...

  3. mysql 定义存储过程_mysql——定义——存储过程和函数——概念

    存储过程和函数是指将经常使用的一组SQL语句组合在一起,并将这些SQL语句当作一个整体存储在服务器中 一.创建存储过程 语法格式: create procedure sp_name ( [ proc_ ...

  4. mysql触发器和存储过程_MySql的存储过程和触发器

    Mysql的存储过程是类似于其它编程语言中的函数的功能,存储过程内部可以使用顺序循环和转移三种基本程序结构,而且整个存储过程可以接受和返回参数. 创建存储过程(procedure)时,因为其内部有以; ...

  5. java mysql 触发器 存储过程_mysql 触发器 存储过程 java调用

    触发器和存储过程是为了提高SQL的运行效率. SQL语句先编译.后执行,而触发器与存储过程都会提前预编译完成,且只编译一次,供反复调用. 随着时代的进步,硬件与带宽的提升,触发器和存储过程提升效率并不 ...

  6. c mysql分页存储过程_mysql 分页存储过程调用报错

    以前没有写过存储过程,第一次写遇到了这个问题,没弄明白.希望哪位大神能给出的建议!!! sql 语句如下: CREATE DEFINER=`root`@`%` PROCEDURE `pager` ( ...

  7. mysql多值存储过程_mysql使用存储过程回来多个值

    mysql使用存储过程返回多个值 可以使用OUT.INOUT参数类型让存储过程返回多个结果,存储函数不能胜任,因为只能返回一个.比如统计student数据表里男生和女生人数并通过它的参数返回这两个计数 ...

  8. mysql prepare 存储过程_mysql prepare 存储过程使用

    语法 [sql] PREPARE statement_name FROM sql_text /*定义*/ EXECUTE statement_name [USING variable [,variab ...

  9. mysql execute 存储过程_mysql之存储过程

    存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中,通过调用它的名字可以执行其内部的一堆sql 存储过程的优点 #1. 用于替代程序写的SQL语句,实现程序与sql解耦 #2. 可以通 ...

最新文章

  1. 如何进行现场演示(二)
  2. c 语言程序设计(清华大学郑莉),C+语言程序设计(清华大学郑莉)十一ppt课件
  3. Spring 3.1缓存抽象教程
  4. python语言实现reverse函数翻转字符串_python 实现字符串反转的几种方法
  5. laravel queue java_使用 Laravel Queue 不得不明白的知识
  6. 2017 ACM-ICPC乌鲁木齐网络赛 B. Out-out-control cars(几何)
  7. java canvas数组_java数组
  8. mysql数据迁移数据一致性检教6_数据迁移后的一致性校验
  9. 为树莓派制作系统镜像时进行瘦身,方便后续保存与批量写入
  10. php架构师生涯一个月总结
  11. unimodal_palindromic——回文串dp动规
  12. sublime 前端css 插件
  13. 优秀的海外住宅代理该从哪几个角度判断?
  14. POI批量导出Excel ZIP打包下载
  15. 【Python数据分析与可视化】Pandas统计分析-实训
  16. CRPR能补偿crosstalk吗?
  17. 逍遥游 一致性和哥德尔两大定理—— 读哥德尔之八
  18. Gridea+Coding Page个人网站搭建
  19. android 开发 网易邮箱,怎么在Android客户端设置网易企业邮箱
  20. unity字符串信息加密

热门文章

  1. cisco6509 2811 配置备份
  2. 《暖冬里的事儿 ——春假散札》
  3. Oracle定时调用存储过程
  4. Linux基础学习(5)
  5. (python)数据结构------列表
  6. 删除ELK中的数据。。
  7. Linux 搭建PHP环境
  8. Metasploit介绍
  9. Webservice接口
  10. sscanf和sprintf的高级用法