第十章 数据库编程
- 函数
- 内置函数
- MySql中的内置函数大全_mysql 全部内置函数-CSDN博客 ,需要用到自行查找
- 自定义函数
- 修改语句结束符
- delimiter ; -->将结束符修改为‘;’,要有空格
- 避免使用’\‘反斜杠作为语句结束符,他是转义字符
- 创建自定义函数
- create function
- if not exists [function_name] ([参数 数据类型,……])
- return 返回值类型 [特征值] P208
- begin
- 函数体
- return 返回值;
- end
- 查看自定义数据库
- show function status like [func_name]\G
- 调用
- select [func_name](参数列表);
- 删除
- drop function if exists [func_name];
- 修改语句结束符
- 内置函数
- 存储过程
- 概述
- procedure vs function
- no return
- call vs select
- 创建存储过程
- create procedure [pro_name] ([[in|out|inout] 参数名称 参数类型
- begin
- 过程体
- end
- 查看
- show procedure status
- show create procedure [name] \G
- select * from information_schema.routines where routine_name='[name]' and routine_type='procedure'\G
- 调用
- call [name](实参);
- 修改
- alter procedure [name] [特征值];
- 删除
- 错误处理
- 自定义错误名称
- declare 错误名称 condition for 错误类型
- 自定义错误处理程序
- handler
- 错误类型 P218
- 自定义错误名称
- 概述
- 变量
- 系统变量
- variables
- set
- 会话变量
- set @变量名
- select...into @ 变量名
- 局部变量
- declare
- 系统变量
- 流程控制语句
- 判断语句
- if
- SQL
- 程序
- if 条件表达式 then ...
- else
- end if
- case
- SQL
- case when 1 then 11
- when 2 then 22
- else
- end
- case when 1 then 11
- 程序
- end case
- SQL
- 循环语句
- LOOP
- repeat
- until
- while
- do
- 跳转语句
- leave
- iterate
- if
- 判断语句
- 游标
- 概述
- 指针,用于交互式应用程序
- 基本操作
- 定义
- declare [name] cursor for select ...
- 打开
- 检索
- fetch
- 关闭
- 定义
- 概述
- 触发器
- 基本操作
- 创建
- 触发时机 P236
- 触发事件 P236
- 关键字
- new
- old
- 关键字
- 查看
- show triggers
- select ... from information_schema.triggers
- 执行
- 删除
- 创建
- 基本操作
- 事件
- 事件只能定时触发,不能手动调用
- 基本操作
- 查看事件调度器状态
- event scheduler
- 创建
- create event
- on schedule -->定义事件开始与结束时间、执行频率以及持续时间
- 创建只执行一次的事件
- at
- 创建定期重复执行事件
- every
- starts
- 查看
- 修改
- 删除
- 查看事件调度器状态
- 预处理SQL语句
- 概述
- 将关键字与数据分离
- 先编写SQL语句模板,再根据提交的数据进行指定操作
- 对比图
- 概述
-
- 基本操作
- 创建
- prepare
- ?-->占位符
- 执行
- execute
- 释放
- deallocate
- 创建
- 基本操作