语法:

1.存储过程:

create PROCEDURE name(argment_list)

begin

sql_statement;

end

2.触发器:

create trigger name (before|after) (insert | update | delete) on table_name

for each row

begin

sql_statement;

end

3.游标:

declare cursor_name cursor for select statement;

4.其他语法

declare var_name int; 声明变量

setvar_name = 5; 赋值

-- 或者

set @var_name = 5

例子:

CREATE PROCEDURE `procedure_name`()

BEGIN

Declare found boolean default true;

Declare name varchar(20);

Declare names_cursor cursor for SELECT name FROM user;

DECLARE CONTINUE HANDLER FOR NOT FOUND set found=false;

open names_cursor;

name_loop:LOOP fetch names_cursor into name;

if found then

sql_statement;

else

leave name_loop;

end if;

end LOOP name_loop;

close names_cursor;

END

create trigger trigger_name before insert on user

for each row

begin

set @userid = NEW.userid;

set @name = NEW.name;

set @count= (select count(userid) from user where userid=@userid and name = @name);

if @count=1 then

-- this user already exists,throw exception

insert into Error_message_ChannelIdToClientMustBeUnique values(1);

end if;

end

mysql存储过程触发器游标_MySQL存储过程,触发器,游标相关推荐

  1. mysql 存储过程 定义数组_MySql存储过程

    Mysql进阶 存储过程 1 什么是存储过程 1.存储过程,带有逻辑的sql语句 2.之前的sql没有条件判断,没有循环 3.存储过程带上流程控制语句(if while) 2 存储过程特点 1)执行效 ...

  2. mysql 多个游标_mysql 存储过程中使用多游标

    mysql的存储过程可以很方便使用游标来实现一些功能,存储过程的写法大致如下: 先创建一张表,插入一些测试数据:DROP TABLE IF EXISTS netingcn_proc_test; CRE ...

  3. db2 获取返回的游标_MySQL ------ 存储过程与游标简单使用

    存储过程小例子 如完成以下事情,获得与之前一样的订单合计,但需要对合计增加营业税,不过只针对某些顾客 主要就是:1.获得合计2.把营业税有条件的添加到合计 3.返回合计(带或不带税) delimite ...

  4. mysql存储过程注释方法_mysql存储过程 详细注释

    原文:https://my.oschina.net/u/3582142/blog/1581929 delimiter $$ /* 重新定义mysql结束符,而不再是分号是结束符 */ create p ...

  5. mysql存储过程 简书_MySQL存储过程

    在本节中,您将逐步学习如何在MySQL中编写和开发存储过程. 首先,我们向您介绍存储过程的概念,并讨论何时使用它. 然后,展示如何使用过程代码的基本元素,如创建存储过程的语句,if-else,case ...

  6. c# mysql存储过程 输出参数值_MySQL 存储过程参数用法 in, out, inout

    MySQL 存储过程参数有三种类型:in.out.inout.它们各有什么作用和特点呢? 一.MySQL 存储过程参数(in) MySQL 存储过程 "in" 参数:跟 C 语言的 ...

  7. mysql 存储过程建表_MySQL 存储过程创建表

    创建 CREATE PROCEDURE  Pro_IsExistTable(ableName varchar(100),out outputParam int) BEGIN set @csql=con ...

  8. mysql 存储过程 out 用处_mysql存储过程 OUT or INOUT argument 3 for routine

    mysql存储过程出现: OUT or INOUT argument 3 for routine gotask.UserLogin is not a variable or NEW pseudo-va ...

  9. mysql存储过程list参数_mysql存储过程教程(1)

    MySQL存储过程 1.1         CREATE  PROCEDURE  (创建) CREATE PROCEDURE存储过程名(参数列表) BEGIN SQL语句代码块 END 注意: 由括号 ...

  10. mysql触发器 多数据_mysql的触发器同数据库多表的数据操作_MySQL

    CREATE TRIGGER BEFORE ON FOR EACH ROW //语句可以是任何合法的语句,包括复合语句,但是这里的语句受的限制和函数的一样 2.触发器的创建 不能给同一张表的同一个事件 ...

最新文章

  1. 硬核!手写一个优先队列
  2. Linux为什么可以在x86平台上运行,考虑在x86/Linux平台上的应用程序,以下指令执行时可能......
  3. Netflix: 从 Batch ETL 到 Stream Processing 的转型之路
  4. 【QGIS入门实战精品教程】4.4:QGIS如何将点自动连成线、线生成多边形?
  5. LeetCode 1471. 数组中的 k 个最强值(排序)
  6. git创建仓库,并提交代码(第一次创建并提交)(转)
  7. Qt设计器中,使用QToolBar控件的技巧
  8. 【HNOI2015】落忆枫音
  9. 卸载ie里的java_怎么样卸载IE10/IE11 两种方法教你快速卸载IE10/IE11
  10. 使用java自动下载网易云音乐
  11. websocket前端向后端传数据时出现Buffer
  12. svg 动画_30个很棒的SVG动画
  13. NYOJ - 独木舟上的旅行(贪心)
  14. 测试人员如何提高API功能测试效率?
  15. 在react框架中实现打印过程中踩的坑
  16. 【汇编语言】3.汇编语言程序
  17. mppdb 查看建表语句_内存MPP数据库介绍.pptx
  18. 2019 CVPR之ReID:Hi-CMD: Hierarchical Cross-Modality Disentanglement for Visible-Infrared Person Re-Id
  19. 《解忧杂货店》读后感
  20. 邮件(mail)服务器

热门文章

  1. Loading页的实现代码
  2. 使用@Order调整配置类加载顺序
  3. 冒泡排序与快速排序(java实现)
  4. mysql fetch rows_差异mysql_fetch_array()和mysql_fetch_rows()函数_mysql
  5. 深度学习之边框回归(Bounding Box Regression)
  6. 深度学习之卷积神经网络 LeNet
  7. python 多进程并发_python并发编程之多进程
  8. element table 怎么知道点击的是第几行_el-data-table, 让CRUD更简单??
  9. 【docker】docker虚拟容器的使用大全
  10. 基于matlab 宗晓萍,基于ADAMS和MATLAB的机械臂控制仿真