




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
存储过程 stored procedure sp 是 mysql 5 0 版本中的最大创新 为什么要使用存储过程和触发器 1 存储过程 更快的速度 避免代码冗余 提高数据库的安全性 2 触发器 在程序被定义的时候 用 mysql 客户端 delimiter 命令来把语句界面 从 变为 Delimiter 3 命令的封装 由一条以上的 sql 命令构成的函数或过程必须以关键字 begin 开头 以关键字 end 结束 4 全局变量和局部变量 全局性的普通 sql 变量 这类变量的名字前面都有一个 字符作 为前缀 存储过程的局部变量 这些变量的名字前面没有 字符 必须 在使用它们之前用 declare 命令对它们做出声明 5 声明 declare 变量的声明必须发生在 begin end 语句块里 Declare varname datatype default value 6 对变量赋值 sql 语言不允许以 x x 1 的形式对变量赋值 必须使用 set 或 select into 命令来做这件事 Create procedure 存储过程名 Begin Declare aa int Set aa 1 Select aa End 7 分支 If then else end if 分支 8 循环 Repeat until 循环 While 循环 Loopname while condition do Commands End while loopname loop 循环 loopname loop commands end loop loopname 在这种循环结构里 关键字 loop 和 end loop 之间的语句将一直循 环执行到遇见一条 leave loopname 命令并因此而退出整个循环为止 Create procedure aa Begin Declare I int default 0 Myloop loop Set I i 1 Select I If I 10 then leave myloop End if End loop myloop End 9 出错处理 存储过程里的 sql 命令在执行过程中可能会出错 所以 sql 也像其它 一些程序设计语言那样向程序员提供了一种利用出错处理句柄 error handler 也有人称为 出错处理器 来响应和处理这类错 误的机制 语法 Declare type handler for condition1 condition2 condition3 command 注 Type 类型 可供选择的类型目前只有 continue 和 exit 两种 Continue 的含义是 如果当前命令在执行时发生错误 从下一条命 令继续执行 Exit 的含义是 如果有执行出错 则退出当前 begin end 语句块并 从该语句块之后的第一条命令继续执行 Condition 条件 出错处理条件可以用以下几种方式给出 Sqlstate errorcode 单个 sql 出错代码 它的编号是 errorcode Sqlwarning 涵盖了 sqlstate 编号为 01nnn 的所有错误 Not found 涵盖了所有其他的 即 sqlstate 编号不以 01 或 02 开头 的 错误 Command 命令 执行出错时将要执行的命令 因为这里只允许 放上一条命令 所以它通常是一个变量赋值命令 该变量将在后续 的出错处理代码中使用 一 创建 编辑和删除 sp 1 创建存储过程 Create procedure p name 参数名称 数据类型及精度 Begin Select Into 参数名称 from 表名 End 调用 call 存储过程名 查看 Select 2 编辑存储过程 Alter procedure function name 3 删除存储过程 Drop function f name Drop procedure p name 4 查看存储过程 Show procedure status Show function status 5 查看存储过程代码 Show create procedure 二 光标 声明光标 Declare 光标名 cursor for select 语句 打开光标 Open 光标名 提取 Fetch 光标名 into 变量 关闭光标 Close 光标名 实例 Create procedure aa out a int Begin Declare c jiang cursor for selec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机电运输理论知识培训课件
- 2025年教育品质检验师专业素质考核试卷及答案解析
- 2025年建筑装饰设计师技能等级认证考核试卷及答案解析
- 2025年建筑房屋维修员执业资格考试试题及答案解析
- 2025年家具设计师职业技能等级考试试题及答案解析
- 2025年环境影响评价工程师专业技能测评试题及答案解析
- 课件与导学案模式
- 2025年机械安全员C考试难点题库解析及答案
- 2025年宠物AI医疗系统面试题
- 课件PSD模板教学课件
- 2025年学历类自考专业(学前教育)学前儿童发展-学前教育原理参考题库含答案解析(5套)
- 日本设备销售合同范本
- (2024)大学生宪法知识竞赛题库及答案
- 2025年芜湖市鸠江区医院招聘16名工作人员笔试参考题库附答案解析
- T-CBDA 86-2025 建筑幕墙、采光顶及金属屋面工程质量验收标准
- 厨房消防安全培训
- 小陈 税务风险应对常见指标与答复思路
- 2025云南昭通昭阳区住房和城乡建设局招聘编外工作人员5人笔试备考题库及答案解析
- 2025年《中华人民共和国档案法》知识培训试题及答案
- 新高一数学暑假检测卷(学生版)-2025年新高一数学暑假衔接讲练 (人教A版)
- 2025至2030年中国建筑膜行业市场调查研究及发展趋势预测报告
评论
0/150
提交评论