数据库基础与项目实训教程-基于SQLServer第8章.ppt
【例8-2】执行存储过程getCouseName。在查询分析器中输入如下语句:UseRtvuStuGoExecgetCouseNameGo128.2存储过程的操作【例8-3】创建存储过程getDetailByName,通过输入参数学生姓名,选出该学生的基本信息,对不存在此学生姓名的输入值,必须作检测,打印信息“不存在此学生”。在查询分析器中创建存储过程语句如下:UseRtvuStuGoCreateprocgetDetailByName@namenvarchar(10)AsIfexistsSelect*FromStudentWhere姓名=@nameBeginSelect*FromStudentWhere姓名=@nameEndElseBeginPrint不存在此学生!!EndGo执行该存储过程:ExecgetDetailByName@name=章山8.2.3存储过程的管理查看存储过程通过企业管理器查看存储过程步骤如下:打开企业管理器,展开相应的服务器和数据库“RtvuStu”。选择“存储过程”,在窗口右侧显示当前数据库中所有的存储过程。选择要查看的存储过程,双击或通过右键单击后,选择“属性”选项,弹出“存储过程属性”对话框,在该对话框中查看当前存储过程的T-SQL源代码,如图8-13所示。8.2存储过程的操作8.2存储过程的操作图8-13“存储过程属性”对话框还可以在查询分析器中使用sp_help、sp_helptext、sp_depends等系统存储过程来查看当前数据库中的存储过程对象。这些系统存储过程的用法如下。1)sp_help:用来报告有关数据库对象(sysobjects表中列出的任何对象)、用户定义数据类型或SQLServer中所提供的数据类型的信息,其语法格式如下:sp_help[[@objname=]name]2)sp_helptext:显示用户定义规则的定义、默认值、未加密的T-SQL存储过程、用户定义T-SQL函数、视图或系统存储过程,其语法格式如下:sp_helptext[@objname=]name[,[@columnname=]computed_column_name]3)sp_depends:用于显示有关数据库对象依赖关系的信息,其语法格式如下:sp_depends[@objname=]object图8-14使用系统存储过程查看存储过程8.2存储过程的操作2.修改存储过程可以使用企业管理器修改存储过程,双击要修改的存储过程,在“存储过程属性”对话框的文本框内修改定义存储过程的T-SQL语句,单击“确定”按钮完成修改存储过程。还可以使用AlterProcedure语句修改存储过程,该语句可以增加或删除一些存储过程的选项,如是否加密、是否在每次执行时都进行编译等,其语法格式如下:AlterProcedureprocedure_name[{@parameterdata_type}[Varying][=default][Output]][,…n][With?{recompile|encryption|recompile,encryption}][Forreplication]assql_statement[…n]8.2存储过程的操作【例8-4】修改getCouseName,获取所有“Course”表中的课程名和学分。在查询分析器中输入如下语句:UseRtvuStuGoAlterproceduregetCouseNameAsSelectCname,CreditFromCourseGo此外,要修改存储过程的名称,除了可以通过企业管理器直接修改外,还可以使用系统存储过程sp_rename进行修改,其语法格式如下:sp_renamestoredprocedureobject_name,storedprocedurenew_name其中的‘storedprocedureobject_name’表示存储过程原来的旧名称,storedprocedurenew_name表示存储过程的新名称。【例8-5】将存储过程getCouseName重新命名为getCourseInfo。在查询分析器中输入如下语句:UseRtvuStuGosp