1. --------------创建不带参数的存储过程-----------------
  2. DELIMITER;;
  3. drop PROCEDURE if EXISTS selectStudent;
  4.  
  5. create PROCEDURE 'selectStudent'()
  6. BEGIN
  7. select*from student;
  8. end;;
  9. DELIMITER;
  10.  
  11. --------------带参数的存储过程--------------------
  12. drop PROCEDURE if EXISTS selectCity;
  13.  
  14. create PROCEDURE 'selectCity'(
  15. in _cityID varchar(10)--输入参数--
  16. )
  17. BEGIN
  18. select *from student where cityID=_cityID;
  19. end;
  20.  
  21. --------------带有输出参数的存储过程--------------------
  22. drop PROCEDURE if EXISTS selectCity_Name;
  23. CREATE PROCEDURE 'selectCity_Name'(
  24. in _CityID varchar(10)--输入参数,
  25. out _City varchar(10) --输出参数,
  26. inout _CityIDName varchar(10) --输入输出参数
  27. )
  28. BEGIN
  29. select*from student where cityID=_CityID and CityName=_CityName INTO _City;
  30. end;
  31.  
  32. set @_CityID='';
  33. set @_CityIDName='郑州';
  34. call selectCity_Name(@_CityID,@_City,@_CityIDName);
  35. select @_CityIDName as ID,@_City;
  36.  
  37. -----------带有通配符的存储过程------------
  38. drop PROCEDURE if EXISTS selectCityLike;
  39. create PROCEDURE 'selectCityLike'(
  40. in _CityName varchar(10)
  41. )
  42. BEGIN
  43.  
  44. set @exec_sql =CONCAT("select *from student where name like '%",_CityName,"%'");
  45. PREPARE stmt from @exec_sql ; --定义
  46. EXECUTE stmt;--执行预处理语句
  47. DEALLOCATE PREPARE stmt;--删除定义
  48.  
  49. end
  50.  
  51. -------循环语句:操作前检查结果----------
  52. create PROCEDURE proc4()
  53. BEGIN
  54.  
  55. declare var int;
  56. set var=0;
  57.  
  58. WHILE var<6 DO
  59. insert into t VALUES(var);
  60. set var=var+1;
  61. end while;
  62.  
  63. end
  64.  
  65. ----------循环语句:操作后检查结果------------
  66. create PROCEDURE proc5()
  67. BEGIN
  68.  
  69. DECLARE v int;
  70. set v=0;
  71.  
  72. REPEAT
  73. insert into t VALUES(v);
  74. set v=v+1;
  75. UNTIL v>=5
  76. end repeat;
  77.  
  78. end
  79.  
  80. ----------循环语句:loop..endloop------------
  81. create PROCEDURE proc6()
  82. BEGIN
  83.  
  84. declare v int;
  85. set v=0;
  86.  
  87. loop_lable:LOOP
  88. insert into values(v);
  89.  
  90. set v=v+1;
  91. if v>=5 THEN
  92. LEAVE loop_lable;
  93. end if;
  94.  
  95. end loop;
  96.  
  97. end
  98.  
  99. ----------循环语句:loop..endloop-------------
  100. create PROCEDURE proc7()
  101. BEGIN
  102. DECLARE v int;
  103. set v=0;
  104.  
  105. loop_lable:LOOP
  106.  
  107. if v=3 THEN
  108. set v=v+1;
  109. ITERATE loop_lable;--继续循环
  110. end if;
  111.  
  112. insert into t values(v);
  113. set v=v+1;
  114. if v>=5 THEN
  115. leave loop_lable;--跳出循环
  116. end if;
  117.  
  118. end loop;
  119.  
  120. end;

my sql存储过程 基本使用的更多相关文章

  1. PL/SQL存储过程编程

    PL/SQL存储过程编程 /**author huangchaobiao *Email:huangchaobiao111@163.com */ PL/SQL存储过程编程(上) 1. Oracle应用编 ...

  2. SQL存储过程分页(通用的拼接SQL语句思路实现)

    多表通用的SQL存储过程分页 案例一: USE [Community] GO /****** Object: StoredProcedure [dbo].[Common_PageList] Scrip ...

  3. SQL存储过程的调用及写法

    调用函数: public class SqlProcess { ; public DataSet ReturnSet = null; public SqlDataAdapter adapter = n ...

  4. sql存储过程几个简单例子

    导读:sql存储是数据库操作过程中比较重要的一个环节,对于一些初学者来说也是比较抽象难理解的,本文我将通过几个实例来解析数据库中的sql存储过程,这样就将抽象的事物形象化,比较容易理解. 例1: cr ...

  5. SQL存储过程生成顺序编码

    一.第一种方式 USE [WJKC]GO/****** Object:  StoredProcedure [dbo].[Address_GetCode1]    Script Date: 2016/3 ...

  6. SQL 存储过程入门(事务)(四)

    SQL 存储过程入门(事务)(四)   本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我 ...

  7. 在SQL存储过程中给条件变量加上单引号

    在SQL存储过程中给条件变量加上单引号,不加语句就会出问题,以下就是在存储过程中将条件where设置成了动态变化的,给where赋完值再和前面的语句拼接,再execute(SQL) ), )), )+ ...

  8. SQL存储过程概念剖析

    一.SQL存储过程的概念,优点及语法 定义:将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execut ...

  9. sql 解析字符串添加到临时表中 sql存储过程in 参数输入

    sql 解析字符串添加到临时表中  sql存储过程in 参数输入 解决方法 把字符串解析 添加到 临时表中 SELECT * into #临时表   FROM dbo.Func_SplitOneCol ...

  10. 查询数据库后台Block 的Sql存储过程

    查询数据库后台Block 的Sql存储过程 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO /*记录SQL Server的阻塞情况 wang 200 ...

随机推荐

  1. hdu——1873(优先队列)

    看病要排队 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  2. 在am中定义消息集束,并在CO中验证之后抛出异常。

    需求:在页面上点某个按钮的时候,需要收集所有异常并抛出. -------------------------------------------方式1:参考 EBS OAF开发中的错误/异常处理(Er ...

  3. springboot模糊查询

    在学习MyBatis过程中想实现模糊查询,可惜失败了.后来上百度上查了一下,算是解决了.记录一下MyBatis实现模糊查询的几种方式. 数据库表名为test_student,初始化了几条记录,如图: ...

  4. 转载:【Oracle 集群】RAC知识图文详细教程(八)--Oracle 11G RAC数据库安装

    文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...

  5. TStringGrid的Rows索引值 和 Cells的 索引值, Row的赋值

    Caption := sgShopList.Rows[sgShopList.RowCount +].CommaText; Caption := sgShopList.Rows[sgShopList.R ...

  6. Jenkins无法读取覆盖率报告的解决方法

    报错信息如下: log 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 coverage-report: [mkdir] Cre ...

  7. 在TypeScript中使用其他JS框架或库的方法

    最近刚刚接触TypeScript,感觉非常强大,但是也有一些问题. 比如我们正常写js时,只要把其他js库引入页面,甚至于只要加入到项目中,ReSharper就会自动分析他,并提供语法只能感知,写代码 ...

  8. Beta阶段第2周/共2周 Scrum立会报告+燃尽图 11

    作业要求[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2411] 版本控制:https://git.coding.net/liuyy08 ...

  9. 解决Eclipse中文乱码的问题

    注意:显示中文所有的编码方式主要是GBK和UTF-8,UTF-8是国际通用的中文编码标准,推荐使用. 一. 设置工作空间的编码 编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置 ...

  10. ubuntu16 Intellij Idea Install&config

    1,下载idea二进制文件,有免费和不免费的. https://www.jetbrains.com/idea/download/#section=linux 2,解压下载文件. tar -xvzf . ...