(本科)第11章MYSQL存储过程与函数ppt课件.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(本科)第11章MYSQL存储过程与函数ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)第11章MYSQL存储过程与函数ppt课件.pptx(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:(本科)第11章-MYSQL存储过程与函数ppt课件中国农业大学 李辉p存储过程与函数简介p存储过程与函数操作p系统函数p知识点小结p本章实验p存储过程与函数简介存储过程与函数简介p存储过程与函数操作p系统函数p知识点小结p本章实验p概念概念p存储过程和函数区别p 存储过程(stored procedure)是一组为了完成特定功能的SQL语句集语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。p 一个存储过程是一个可编程的函数可编程的函数,它在数据库中创建并保存。数据库中的存储过程可以看作是对编程中面向对象方法的模拟。它允许
2、控制数据的访问方式。p概念p存储过程和函数区别存储过程和函数区别p 一般来说,存储过程实现的功能要复杂一点,而函数的实存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强现的功能针对性比较强。p 对于存储过程来说可以返回参数返回参数,如记录集,而函数只能返回值或者表对象返回值或者表对象。函数只能返回一个一个变量;而存储过程可以返回多个多个。存储过程声明时不需要返回类型不需要返回类型,而函数声明时需要描述需要描述返回类型,且函数体中必须包含一个有效一个有效的的return语句。语句。p 存储过程,可以使用非确定函数可以使用非确定函数,不允许在用户定义函数主体中内置非确定函数。p 存储过程
3、一般是作为一个独立的部分独立的部分来执行( execute 语句执行),而函数可以作为查询语句的一个部分查询语句的一个部分来调用(select调用)。SQL语句中不可用存储过程,而可以使用函数。p存储过程与函数简介p存储过程与函数操作存储过程与函数操作p系统函数p知识点小结p本章实验p创建和使用存储过程或函数创建和使用存储过程或函数p变量变量p定义条件和处理定义条件和处理p游标的使用游标的使用p流程的控制流程的控制p查看存储过程或函数查看存储过程或函数p删除存储过程或函数删除存储过程或函数p 存储过程存储过程p 创建存储函数p delimiter命令 创建存储过程的语法格式:create pr
4、ocedure sp_name (proc_parameter,.)characteristic . routine_body 其中,sp_name参数是存储过程的名称;proc_parameter表示存储过程的参数列表; characteristic参数指定存储过程的特性;routine_body参数是SQL代码的内容,可以用beginend来标志SQL代码的开始和结束。 调用存储过程的语法格式:call sp_name(parameter,) p 存储过程p 创建存储函数创建存储函数p delimiter命令 创建存储函数语法格式:create function sp_name (func
5、_parameter,.) returns type characteristic . routine_body其中,sp_name参数是存储函数的名称;func_parameter表示存储函数的参数列表;returns type指定返回值的类型;characteristic参数指定存储函数的特性。 调用存储函数的语法格式:select sp_name(func_parameter,)p 存储过程p 创建存储函数p delimiter命令命令 用MySQL delimiter来改变默认的结束标志。 delimiter 格式语法为:delimiter $ 说明,$是用户定义的结束符,通常使用一些
6、特殊的符号。当使用delimiter命令时,应该避免使用反斜杠避免使用反斜杠字符字符,因为那是MySQL转移字符。p创建和使用存储过程或函数创建和使用存储过程或函数p变量变量p定义条件和处理定义条件和处理p游标的使用游标的使用p流程的控制流程的控制p查看存储过程或函数查看存储过程或函数p删除存储过程或函数删除存储过程或函数p declare 语句申明局部变量 用户可以使用declare关键字来定义变量,然后可以为变量赋值。declare 语句申明局部的变量只适用于只适用于beginend程序段中。程序段中。declare语法格式: declare var_name1 ,var_name2 .
7、. . type default value 其中var_name1, var_name2参数是声明的变量的名称,这里可以定义多个变量。type参数用来指明变量的类型;defalut value字句将变量默认值设置为value。p 用set语句给变量赋值 set格式为:set var_name = exper,var_name = exper其中var_name参数是变量的名称;expr参数是赋值的表达式。可以为多个变量赋值。用逗号隔开。p 使用select语句给变量赋值 语法格式:select col_name,. . . into var_name, . . . table_expr其中c
8、ol_name是列名,var_name是要赋值的变量名称。table_var是select语句中的from字句以及后面的部分。p创建和使用存储过程或函数创建和使用存储过程或函数p变量变量p定义条件和处理定义条件和处理p游标的使用游标的使用p流程的控制流程的控制p查看存储过程或函数查看存储过程或函数p删除存储过程或函数删除存储过程或函数p 在高级编程语言中为了提高语言的安全性,提供了异常处理机制。对于MySQL软件,也提供了一种机制来提高安全性提高安全性,那就是本章要介绍的条件。条件的定义和处理主要用于定义在处理过程中遇到问题时,相应的处理步骤。p 定义条件p 定义处理程序 语法格式: decl
9、are condition_name condition for condition_valuecondition_valueSQLstatevalue SQLstate_value| MySQL_error_code 其中condition_name参数表示的是所有定义的条件,condition_value是用来实现设置条件的类型,SQLstate_value和MySQL_error_code用来设置条件的错误。 MySQL中可以使用declare关键字来定义处理程序。 其基本语法如下:declare handler_type handler for condition_value,. sp
10、_statement handler_type: continue | exit | undo condition_value: SQLstate value SQLstate_value |condition_name | SQLwarning | not found | SQLexception | MySQL_error_codep创建和使用存储过程或函数创建和使用存储过程或函数p变量变量p定义条件和处理定义条件和处理p游标的使用游标的使用p流程的控制流程的控制p查看存储过程或函数查看存储过程或函数p删除存储过程或函数删除存储过程或函数p 使用MySQL作为数据库的话,程序员肯定要写很多
11、存储过程,function等。其中,游标肯定是少不了的。我们可以认为游标就是一个一个cursor,就是一个标识,就是一个标识,用来标识数据取到什么地方了用来标识数据取到什么地方了。你也可以把它理解成数组中的下标。p 使用方式声明游标语法格式: declare cursorname cursor for select _ statement 说明说明:cursorname是游标的名称,游标名称使用与表名同样的规则。select _statement是一个select语句,返回的是一行或多行的数据。打开游标语法格式: open cursor_ name 说明说明:在程序中,一个游标可以打开多次,由
12、于其他的用户或程序本身已经更新了表,所以每次打开结果可能不同。 读取数据 游标打开后,就可以使用fetch into语句从中读取数据。语法格式: fetch cursor_name into var_ name , var_name 说明说明:var_name是存放数据的变量名。fetchinto语句与select.into语句具有相同的意义,fetch语句是将游标指向的一行数据赋给一些变量,子句中变量的数目必须等于声明游标时select子句中列的数目。 关闭游标 游标使用完以后,要及时关闭。关闭游标使用close语句语法格式: close cursorname 说明说明:语句参数的含义与op
13、en语句中相同。p创建和使用存储过程或函数创建和使用存储过程或函数p变量变量p定义条件和处理定义条件和处理p游标的使用游标的使用p流程的控制流程的控制p查看存储过程或函数查看存储过程或函数p删除存储过程或函数删除存储过程或函数 if if语句语句 case case语句语句 loop loop语句语句 leave leave语句语句 itebate itebate语句语句 repeat repeat语句语句 while while语句语句ifif语句语句 语法的基本形式如下: if search_condition then statement_list if search_condition
14、 then statement_list elseif search_condition then statement_list elseif search_condition then statement_list else search_condition then statement_list else search_condition then statement_list end if end if 其中search_condition参数表示条件判断语句; statement_list参数表示不同条件的执行语句。casecase语句语句 语法的基本形式如下: case case_v
15、alue case case_valuewhen when_value then statement_listwhen when_value then statement_listwhen when_value then statement_listwhen when_value then statement_listelse statement_listelse statement_list end case end case其中,case_value参数表示条件判断的变量;when_value参数表示变量的取值;statement_list参数表示不同条件的执行语句。looploop语句语
16、句 loop语句可以使用某些特定的语句重复执行,实现简单的循环。 loop没有停止循环的语句。要结合leave离开退出循环或iterate 继续迭代。基本形式如下: statement_list参数表示不同条件的执行语句begin_label: loopbegin_label: loopstatement_liststatement_listend loop end_labelend loop end_labelleaveleave语句语句 leave语句主要用于跳出循环。语法形式如下:其中label参数表示循环标志level labellevel labelitebateitebate语句语
17、句 itebate语句主要用于跳出本次循环,然后进入下一轮循环。 基本语法形式:其中label参数表示循环标志itebate labelitebate labelrepeatrepeat语句语句 repate语句是有条件控制的循环语句。当满足特定条件时,就会 跳出循环语句。基本语法如下: 其中search_condition参数表示条件判断语句;statement_list参数表示不同条件的执行语句begin_label: repeatbegin_label: repeatstatement_liststatement_list until search_confitionuntil sear
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科 11 MYSQL 存储 过程 函数 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内