《项目9 存储过程的创建与管理ppt课件.ppt》由会员分享,可在线阅读,更多相关《项目9 存储过程的创建与管理ppt课件.ppt(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、在此输入您的封面副标题项目9 存储过程的创建与管理数据库技术及应用数据库技术及应用 项目任务项目任务l任务一:存储过程知识介绍l任务二:创建和执行存储过程l任务三:修改存储过程项目九项目九 存储过程的创建与管理存储过程的创建与管理任务一:存储过程知识介绍任务一:存储过程知识介绍1、什么是存储过程?存储过程的类型?什么是存储过程?存储过程的类型?l存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的一组为了完成特定功能的SQL 语句集语句集,存储在数据库中,经过第一次编译后再次调,存储在数据库中,经过第一次编译后再次调用不需要再次编译用不需要再次编译,用户通过
2、指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。任务一:存储过程知识介绍任务一:存储过程知识介绍1、什么是存储过程?存储过程的类型?什么是存储过程?存储过程的类型?l存储过程的种类主要有如下三种: (1)系统存储过程系统存储过程 系统存储过程是数据库管理系统为了完成相关的管理工作预设设计好的,一般以 “sp_”开头,我们前面项目中介绍存储过程时基本上都是调用的系统存储过程。任务一:存储过程知识介绍任务一:存储过程知识介绍1、什么是存储过程?存储过程的类型?什么是存储过程?存储过程的类型?l存储过程的种类主要有如下三种: (2)用户自定义存储过程
3、用户自定义存储过程 用户自定义存储过程是由用户创建并完成某一特定功能的存储过程。 (3)扩展存储过程扩展存储过程 扩展存储过程是用户可以使用外部程序设计语言编写的存储过程,名称通常以“xp_”开头。任务二:创建和执行存储过程任务二:创建和执行存储过程语法:语法:任务二:创建和执行存储过程任务二:创建和执行存储过程实例实例1、在、在grade_manage数据库中创建无参数存储过程数据库中创建无参数存储过程p_student,该存储过程返回,该存储过程返回student表中系别为表中系别为“信息信息工程系工程系”的所有数据行。的所有数据行。任务二:创建和执行存储过程任务二:创建和执行存储过程实例
4、实例2、使用、使用SQL语句执行存储过程语句执行存储过程p_student。执行无参数存储过程的语法如下:Exec 任务二:创建和执行存储过程任务二:创建和执行存储过程实例实例3、在、在grade_manage数据库中创建有参数存储过程数据库中创建有参数存储过程p_studentpara,该存储过程根据给定的系名返回对应,该存储过程根据给定的系名返回对应系的学生信息。系的学生信息。任务二:创建和执行存储过程任务二:创建和执行存储过程实例实例4、使用、使用SQL语句执行存储过程语句执行存储过程p_studentpara。执行有参数存储过程的语法如下:Exec 参数名参数名=value, 参数名参
5、数名=value任务二:创建和执行存储过程任务二:创建和执行存储过程实例实例5、创建带输出参数的存储过程、创建带输出参数的存储过程p_sdeptNum,能通过,能通过用户给定的系名来统计对应系的学生人数,并将学生人数返用户给定的系名来统计对应系的学生人数,并将学生人数返回给用户。回给用户。在需要从存储过程中返回一个或多个值时,可以在创建存储过程的语句中定义这些输出参数,这时就需要在创建存储过程中使用“output”关键字明确说明定义的参数。声明输出参数的命名语法如下:参数名数据类型参数名数据类型=default output任务二:创建和执行存储过程任务二:创建和执行存储过程实例实例6、执行存
6、储过程、执行存储过程p_sdeptNum。由于在存储过程p_sdeptNum中定义了两个参数,一个输入参数stu_sdept,一个输出参数sdpt_num,在测试时需要先定义两个局部变量,并给输入参数赋予初值,定义局部变量需要用declare关键字声明。对于输出参数sdpt_num不需要赋值,其值是通过存储过程中的SQL语句执行完后返回给用户进一步使用。任务三:修改存储过程任务三:修改存储过程l存储过程的修改主要有三种不同的形式:(1)修改存储过程的功能。需要对存储过程的SQL语句集进行修改;(2)修改存储过程的名字。(3)删去存储过程。任务三:修改存储过程任务三:修改存储过程实例实例7、修改
7、存储过程、修改存储过程p_student,使该存储过程返回,使该存储过程返回student表中系别为表中系别为“信息工程系信息工程系”并且性别为并且性别为“男男”的所的所有数据行。有数据行。任务三:修改存储过程任务三:修改存储过程实例实例8、修改存储过程、修改存储过程p_steptNum,使得,使得p_steptNum显示指定系男生的人数。显示指定系男生的人数。实例8的SQL语句如下:ALTERproceduredbo.p_sdeptNumstu_sdeptnchar(20),sdept_numsmallintoutputasselectsdept_num=(selectCOUNT(*)系人数
8、fromstudentwheresdept=stu_sdeptandssex=男)printsdept_num任务三:修改存储过程任务三:修改存储过程实例实例9、重命名存储过程、重命名存储过程p_sdeptNum,指定新的名字为,指定新的名字为“p_sdept_maleNum”。实例9的具体执行步骤如下:(1)在“对象资源管理器”中展开“grade_manage”数据库;(2)展开“可编程性”选项,再开展“存储过程”;(3)右键单击要重命名的存储过程“p_sdeptNum”,在弹出的快捷菜单中选择“重命名”命令;(4)输入存储过程的新名字“p_sdept_maleNum”;(5)按回车键完成修
9、改。任务三:修改存储过程任务三:修改存储过程实例实例10、删除存储过程、删除存储过程p_studentpara。删除存储过程既可以在SSMS中通过与实例9相似的方法进行,也可以直接采用SQL语句执行。1、首先介绍在SSMS中删除存储过程的步骤:(1)在“对象资源管理器”中展开“grade_manage”数据库;(2)展开“可编程性”选项,再开展“存储过程”;(3)右键单击要删除的存储过程“p_studentpara”,在弹出的快捷菜单中选择“删除”命令;(4)在弹出的如图11-15所示的对话框中点击“确定”,完成删除;2、采用SQL语句删除存储过程的语法如下:Drop procedure 总结与反思总结与反思l理解存储过程的用途理解存储过程的用途l学会在数据库中创建和执行存储过程学会在数据库中创建和执行存储过程l学会在数据库中修改存储过程学会在数据库中修改存储过程