电工与电子技术电子商务电子课件MySQL数据库应用4.7 创建和使用存储函数ppt_第1页
电工与电子技术电子商务电子课件MySQL数据库应用4.7 创建和使用存储函数ppt_第2页
电工与电子技术电子商务电子课件MySQL数据库应用4.7 创建和使用存储函数ppt_第3页
电工与电子技术电子商务电子课件MySQL数据库应用4.7 创建和使用存储函数ppt_第4页
电工与电子技术电子商务电子课件MySQL数据库应用4.7 创建和使用存储函数ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电子课件MySQL数据库应用4.7 创建和使用存储函数项目4:创建数据库对象数据库应用任务2 创建存储过程和函数 创建和使用存储函数 教学目标 素质目标 知识目标1.培养学生温故知新的学习习惯;2.培养学生对前后知识综合应用的能力;3.思政融入点:高考成绩查询与查询系统开发中使用函数与提高工作效率的关系。1.了解存储函数与存储过程的区别;2.掌握创建存储函数的方法;3.掌握调用存储函数的方法;4.了解查看和删除存储函数的方法; 5.掌握在工具软件SQLyog中创建和管理存储函数的方法 能力目标1.具备对具体项目需求创建存储函数的能力;2.具有根据具体项目对存储函数进行管理的能力。 教学重点创建

2、存储函数和调用存储函数。 教学难点创建存储函数,特别是编写创建存储函数的SQL语句,要求对前面各章节的内容比较熟练才行。教学重难点1.抽查与评讲作业;2.复习存储过程的创建及调用方法;3.检查课程预习情况:“存储过程与存储函数的区别是什么?” 创建和使用存储函数5复习的创建及调用创建一个带有输入输出参数的存储过程proc_count,用于统计xsqk表中某个指定专业名的学生人数。mysql delimiter /mysql create procedure proc_count(in ZYM varchar(20),out count_num int) - reads sql data - b

3、egin - select count(*) into count_num from xsqk - where 专业名=ZYM; - end /Query OK, 0 rows affected (0.01 sec)mysql delimiter ;调用存储过程proc_count,并显示指定专业名的学生人数。mysql call proc_count(信息安全,num);创建和使用存储过程 6知识储备1什么是存储函数存储函数的作用与存储过程相似,都是由SQL语句组成的语句块,并且可以从应用程序中调用,它与存储过程是的区别:存储函数没有输出参数,因为函数本身就有返回值,且只能返回一个值,而存储

4、过程可以有多个返回值;不用call来进行存储函数调用;存储函数体中有一条“return值”语句,面存储过程没有。创建和使用存储函数 7知识储备2创建存储函数创建存储函数的语法规则如下:CREATE FUNCTION 存储函数名(参数,)RETURNS 返回值类型函数体;其中:参数:在存储函数中,可以有多个参数,每个参数包括名称和类型两部分;RETURNS 返回值类型:声明函数返回值的数据类型;函数体:是存储函数实现的功能,和存储过程一样,由若干条SQL语句组成,同样的流程控制方法,同样是以BEGIN开始,END结束,并且END结束之前必须有“return 值”语句用于返回存储函数的值。创建和使

5、用存储函数 8知识储备2创建存储函数【创建存储函数示例】创建一个存储函数func_xs,要求输入学生的学号,返回该学生的姓名。mysql DELIMITER /mysql CREATE FUNCTION func_xs(xh CHAR(10) - RETURNS VARCHAR(10) - READS SQL DATA - BEGIN - RETURN(SELECT 姓名 - FROM xsqk - WHERE 学号=xh); - END /Query OK, 0 rows affected (0.01 sec)mysql DELIMITER ;创建和使用存储函数 9知识储备互动:1讲述存储函

6、数func_xs的程序设计思路。10创建和使用存储函数知识储备3调用存储函数存储函数的调用基本语法格式:SELECT 存储函数名(参数,)【调用存储函数示例】调用存储函数func_xs。调用结果如图所示。创建和使用存储函数 11知识储备互动操作:调用存储函数func_xs,查询学号是2016110101的学生姓名。12创建和使用存储函数知识储备4查看存储函数有两种方式查看存储函数。(一)查看在数据库中已创建的存储函数其语法规则是:SHOW FUNCTION STATUS;(二)查看存储函数的定义代码其语法规则是:SHOW CREATE FUNCTION 存储函数名G;创建和使用存储函数 13知

7、识储备互动操作:查看存储函数func_xs的定义代码。14创建和使用存储函数知识储备5删除存储函数删除存储函数的基本语法格式是:DROP FUNCTION IF EXISTS 存储函数名【删除存储函数示例】删除存储函数func_xs。mysql drop function if exists func_xs;创建和使用存储函数 15知识储备互动操作:删除存储函数func_xs。16创建和使用存储函数任务实施【任务1】创建存储函数func_cj,要求输入该学生的学号和课程号后,返回该学生这门课的成绩。mysql DELIMITER $mysql CREATE FUNCTION func_cj (

8、xh CHAR(10),kch VARCHAR(3) - RETURNS DOUBLE(5,1) - READS SQL DATA - BEGIN - RETURN(SELECT 成绩 - FROM cj - WHERE cj.学号=xh AND cj.课程号=kch); - END $Query OK, 0 rows affected, 1 warning (0.01 sec)mysql DELIMITER ;创建和使用存储函数 17任务实施【任务2】调用存储函数func_cj。 调用结果如图所示。创建和使用存储函数 18任务实施1讲述创建存储函数func_cj的创建思路。2使用存储函数fu

9、nc_cj查询学号是2016110101,课程号是101的学生成绩。19创建和使用存储函数任务实施【任务3】创建一个函数func_count,用于统计选了某门课程的学生人数。mysql DELIMITER /mysql CREATE FUNCTION func_count(kch CHAR(3) - RETURNS INT - READS SQL DATA - BEGIN - RETURN(SELECT COUNT(*) - FROM cj - WHERE 课程号=kch); - END /Query OK, 0 rows affected (0.01 sec)mysql DELIMITER

10、;创建和使用存储函数 20任务实施【任务4】调用存储函数func_count。调用结果如图所示。创建和使用存储函数 21任务实施3讲述创建存储函数func_count的创建思路。4使用存储函数func_count查询选修了课程号是102的学生人数。22创建和使用存储函数任务拓展【拓展1】使用工具软件SQLyog来创建一个存储函数func_kscj,通过调用存储函数func_cj获得学生成绩,如果该生的这门课程成绩及格,则输出该成绩,否则提示成绩不及格。创建和使用存储函数 23DELIMITER /CREATE FUNCTION func_kscj2(xh CHAR(10),kch CHAR(3) RETURNS VARCHAR(20) READS SQL DATABEGIN DECLARE kscj INT; SELECT func_cj(xh,kch) INTO kscj; IF kscj=60 THEN RETURN kscj; ELSE RETURN 成绩不及格; END IF;END /DELIMITER ;任务拓展【拓展2】调用存储函数func_kscj。创建和使用存储函数 24复习:1存储函数与存储过程的区别;2创建存储函数;3调用存储函数;4查看和删除存储函数; 5在工具软

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论