-- 创建一个存储过程
DELIMITER $
CREATE
PROCEDURE 存储过程名称(返回类型 参数名1 参数类型1, ....)
[ ...... ]
BEGIN
-- 具体组成存储过程的SQL语句....
END $
DELIMITER ;

-- 创建一个存储函数
DELIMITER $
CREATE
FUNCTION 存储函数名称(参数名1 参数类型1, ....)
RETURNS 数据类型
[NOT] DETERMINISTIC statements
BEGIN
-- 具体组成存储函数的SQL语句....
END $
DELIMITER ;

-- 创建一个触发器
CREATE TRIGGER 触发器名称
{BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON 表名
FOR EACH ROW
-- 触发器的逻辑(代码块);

-- ------------- 用户变量与局部变量 ---------------
-- 定义、修改用户变量
set @变量名称 = 变量值;
-- 查询用户变量
select @变量名称;

-- 定义局部变量
DECLARE 变量名称 数据类型 default 默认值;
-- 为局部变量赋值(方式1)
SET 变量名 = 变量值;
-- 为局部变量赋值(方式2)
SET 变量名 := 变量值;
-- 为局部变量赋值(方式3)
select 查询结果字段 into 变量名 from 表名;

-- ------------- 流程控制 ---------------
-- if、elseif、else条件分支语法
IF 条件判断 THEN
-- 分支操作.....
ELSEIF 条件判断 THWN
-- 分支操作.....
ELSE
-- 分支操作.....
END IF

-- case分支判断语句
-- 第一种语法
CASE 变量
WHEN 值1 THEN
-- 分支操作1....
WHEN 值2 THEN
-- 分支操作2....
.....
ELSE
-- 分支操作n....
END CASE;

-- 第二种语法
CASE
WHEN 条件判断1 THEN
-- 分支操作1....
WHEN 条件判断2 THEN
-- 分支操作2....
.....
ELSE
-- 分支操作n....
END CASE;

-- 循环:LOOP、WHILE、REPEAT
-- loop循环
循环名称:LOOP
-- 循环体....
END LOOP 循环名称;

-- while循环
【循环名称】:WHILE 循环条件 DO
-- 循环体....
END WHILE 【循环名称】;

-- repeat循环
【循环名称】:REPEAT
-- 循环体....
UNTIL 结束循环的条件判断
END REPEAT 【循环名称】;

-- 循环跳转
LEAVE 【循环名称】; -- 结束某个循环体
ITERATE 【循环名称】; -- 跳出某个循环体,继续下次循环

-- ------------- 存储过程的游标 ---------------
-- ①声明(创建)游标
DECLARE 游标名称 CURSOR FOR select ...;

-- ②打开游标
OPEN 游标名称;

-- ③使用游标
FETCH 游标名称 INTO 变量名称;

-- ④关闭游标
CLOSE 游标名称;

最新文章

  1. Android 学习笔记 BroadcastReceiver广播...
  2. mysql字段额外属性,除去字段类型外的其他属性
  3. HDU 5768:Lucky7(中国剩余定理 + 容斥原理)
  4. Java_数组
  5. What is the difference between differed processing mode and interactive mode?
  6. 剑指Offer19 包含min函数的栈
  7. 解决IE6下浮动层固定定位的经典方法
  8. poj2151
  9. Java 自定义日志写入
  10. QWidget类中默认是忽略inputMethodEvent事件(要获取输入的内容就必须使用这个事件)
  11. 在Pycharm中使用jupyter笔记本
  12. BZOJ4554 - [TJOI2016&HEOI2016]游戏
  13. Springboot+Redis 配置和使用
  14. CTF显隐术:九连环
  15. kotlin string
  16. 对线性模型进行最小二乘法学习的实例(使用三角多项式基函数 Python实现)
  17. ES6学习(一)搭建环境
  18. 【C#/WPF】图像数据格式转换时,透明度丢失的问题
  19. 定义 S4 类
  20. openvswitch dpdk

热门文章

  1. Spring Boot Hello World 基于 IDEA 案例详解
  2. Cesium模型贴地问题(八)
  3. JZOJ 2022.07.18【提高组A】模拟
  4. [POI2011]MET-Meteors 解题报告
  5. 黑群晖NAS、windows server服务器内网穿透
  6. Vue 禁止按钮多次点击 重复提交数据(指令实现)
  7. springboot跳转页面404的问题
  8. SVN提交到服务器退回至指定版本(撤销操作)
  9. mysql 根据父id查询下级所有数据
  10. K8s之Etcd的备份与恢复