(8.1.1)--8.1创建存储过程.ppt

上传人:刘静 文档编号:84314511 上传时间:2023-04-04 格式:PPT 页数:19 大小:3.34MB
返回 下载 相关 举报
(8.1.1)--8.1创建存储过程.ppt_第1页
第1页 / 共19页
(8.1.1)--8.1创建存储过程.ppt_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《(8.1.1)--8.1创建存储过程.ppt》由会员分享,可在线阅读,更多相关《(8.1.1)--8.1创建存储过程.ppt(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1 1 创建存储过程本节课内容包括1、存储过程的创建2 2 创建存储过程存储过程(StoredProcedure)是在数据库服务器端执行的T-SQL语句的集合,经编译后存放在数据库服务器中。存储过程作为一个单元进行处理并由一个名称来标识。它能够向用户返回数据、在数据库表中写入或修改数据,还可以执行系统函数和管理操作。用户在编程过程中只需要给出存储过程的名称和必需的参数,就可以方便地调用它们。3 3 创建存储过程l直接执行Transact-SQL语句一般要经过以下几个步骤:(1)Transact-SQL语句发送到服务器。(2)服务器编译Transact-SQL语句。(3)优化产生查询执行计划。(

2、4)数据库引擎执行查询计划。(5)执行结果发回客户程序。4 4 创建存储过程l存储过程的优点(1)存储过程可以嵌套使用,支持代码重用。(2)存储过程可以接受并使用参数动态执行其中的SQL语句。(3)存储过程比一般的SQL语句执行速度快。(4)存储过程具有安全特性(例如权限)和所有权链接,以及可以附加到它们的证书。(5)存储过程允许模块化程序设计。(6)存储过程可以减少网络通信流量。(7)存储过程可以强制应用程序的安全性。5 5 创建存储过程l存储过程的类别:(1)系统存储过程,系统存储过程是由SQL Server提供的存储过程,可以作为命令执行。系统存储过程定义在系统数据库master中,其前

3、缀是“sp_”。(2)用户自定义存储过程,是由用户创建并能完成某一特定功能(如查询用户所需数据信息)的存储过程。(3)扩展存储过程,是可以动态加载和运行DLL(动态链接库)的数据库。6 6 创建存储过程l使用SQLServer管理工具创建存储过程;l使用Transact-SQL语言创建存储过程。两种方法:7 7 创建存储过程l创建存储过程的基本语法格式:CREATEPROCEDUREprocedure_nameparameterdata_type=defaultOUTPUT,.n1WITHENCRYPTIONASsql_statement8 8 创建存储过程l说明:procedure_name

4、:用于指定存储过程名,必须符合标识符规则,且对于数据库及其所有者必须唯一。建议不在过程名称中使用前缀 sp_。parameter:为存储过程的形参,符号作为第一个字符来指定参数名。参数名必须符合标志符规则。创建存储过程时,可声明一个或多个参数,每个过程的参数仅用于该过程本身;其他过程中可以使用相同的参数名称。默认情况下,参数只能代替常量表达式,而不能用于代替表名、列名或其他数据库对象的名称。data_type:参数的数据类型。除 table 之外的其他所有数据类型均可以用作 Transact-SQL 存储过程的参数。9 9 创建存储过程l说明:Default:参数的默认值,如果执行存储过程时末

5、提供参数的的变量值,则使用Default值。默认值必须是常量或 NULL。如果过程使用带 LIKE 关键字的参数,则可包含下列通配符:%、_、和。OUTPUT:指示参数是输出参数。此选项的值可以返回给调用 EXECUTE 的语句。使用 OUTPUT 参数将值返回给过程的调用方。WITHENCRYPTION:指示 SQL Server 将 CREATE PROCEDURE 语句的原始文本转换为模糊格式。模糊代码的输出在 SQL Server 2008 的任何目录视图中都不能直接显示。sql_statement:要包含在过程中的一个或多个 Transact-SQL 语句。1010 创建存储过程l【

6、任务1】创建存储过程。一个带有SELECT语句的简单存储过程,该存储过程返回所有男生姓名、学号、班级号等。该存储过程不使用任何参数。CREATEPROCEDUREpro_stuASSELECTstudent_no,student_name,sex,class_idFROMt_studentWHEREsex=男GO1111 创建存储过程图8-1例1运行结果1212 创建存储过程l【任务2】创建存储过程。创建一个存储过程,以简化对t_major表的数据添加工作,使得在执行该存储过程时,其参数值作为数据添加到表中。CREATEPROCEDUREpro_major_insertParam1varcha

7、r(50),Param2varchar(50),Param3intASBEGINInsertintot_major(major_no,major_name,department_id)values(Param1,Param2,Param3)ENDGO1313 创建存储过程图8-2例2运行结果1414 创建存储过程l【任务3】创建存储过程。存储过程中的第一个参数sname将接收由调用程序指定的输入值(学生姓名),第二个参数majorname(专业名称)将用于将该值返回调用程序。SELECT语句使用sname参数获取正确的majorname值,并将该值分配给输出参数。1515 创建存储过程图8-3

8、例3运行结果CREATEPROCEDUREstu_scoresnamechar(8),sscorerealoutputASSELECTsscore=成绩from成绩信息表join学生信息表on学生信息表.学号=成绩信息表.学号where姓名=snameGO1616 创建存储过程l【任务4】创建存储过程。创建一个参数的缺省值中使用通配符的存储过程。CREATEPROCEDUREpro_stu2fnavarchar(50)=李%ASSELECT*FROMt_studentWHEREstudent_namelikefnaGO1717 创建存储过程图8-4例4运行结果1818 创建存储过程l任务小结创建存储过程的操作步骤:(1)Transact-SQL语句发送到服务器。(2)服务器编译Transact-SQL语句。(3)优化产生查询执行计划。(4)数据库引擎执行查询计划。(5)执行结果发回客户程序。1919 创建存储过程课程小结1、存储过程的创建

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁