欢迎来到天天文库
浏览记录
ID:36570930
大小:1.05 MB
页数:40页
时间:2019-05-09
《《SqlServer高级》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、存储过程第七章回顾管理控制事务的常用T-SQL语句有哪些?什么是视图?它有什么好处?T-SQL中哪个关键字可以实现用索引查询数据?本章任务使用存储过程完成以下功能:查看各学期的课程信息查询指定学期开设的课程信息获得指定学期开设的课程数目插入新增课程记录本章目标了解存储过程的优点掌握常用的系统/扩展存储过程使用存储过程封装业务逻辑掌握如何实现错误处理什么是存储过程2-1预先存储好的SQL程序保存在SQLServer中通过名称和参数执行intsum(inta,intb){ints;s=a+b;returns;}类似于C#语言中的方法什
2、么是存储过程2-2可带参数,也可返回结果可包含数据操纵语句、变量、逻辑控制语句等存储过程------------------------单个SELECT语句SELECT语句块SELECT语句与逻辑控制语句可以包含存储过程的优点执行速度更快允许模块化程序设计提高系统安全性减少网络流通量存储过程的分类系统存储过程系统存储过程的名称一般以“sp_”开头由SQLServer创建、管理和使用存放在Resource数据库中类似C#语言类库中的方法扩展存储过程扩展存储过程的名称通常以“xp_”开头使用编辑语言(如C#)创建的外部存储过程以DLL
3、形式单独存在用户自定义存储过程由用户在自己的数据库中创建的存储过程类似C#语言中用户自定义的方法常用的系统存储过程系统存储过程说明sp_databases列出服务器上的所有数据库sp_helpdb报告有关指定数据库或所有数据库的信息sp_renamedb更改数据库的名称sp_tables返回当前环境下可查询的对象的列表sp_columns返回某个表列的信息sp_help查看某个表的所有信息sp_helpconstraint查看某个表的约束sp_helpindex查看某个表的索引sp_stored_procedures列出当前环境中
4、的所有存储过程sp_password添加或修改登录帐户的密码sp_helptext显示默认值、未加密的存储过程、用户定义的存储过程、触发器或视图的实际文本调用存储过程调用存储过程的语法或EXECUTE过程名[参数]EXEC过程名[参数]如果执行存储过程的语句是批处理中的第一个语句,则可以不指定EXECUTE关键字sp_databasesEXECsp_renamedb'MyBank','Bank'USEMySchoolGOsp_tablesEXECsp_columnsStudentEXECsp_helpStudentEXECsp_h
5、elpconstraintStudentEXECsp_helptext'view_Student_Result_Info'EXECsp_stored_procedures常用的系统存储过程修改数据库的名称(单用户访问)列出当前系统中的数据库当前数据库中查询的对象的列表返回某个表列的信息查看表Student的信息查看表Student的约束查看视图的语句文本查看当前数据库中的存储过程演示案例1:常用的存储过程常用的扩展存储过程xp_cmdshell可以执行DOS命令下的一些的操作以文本行方式返回任何输出EXECxp_cmdshellD
6、OS命令[NO_OUTPUT]创建数据库bankDB,要求保存在D:bankUSEmasterGOEXECxp_cmdshell'mkdirD:bank',NO_OUTPUTIFEXISTS(SELECT*FROMsysdatabasesWHEREname='bankDB')DROPDATABASEbankDBGOCREATEDATABASEbankDB(…)GOEXECxp_cmdshell'dirD:bank'--查看文件创建文件夹D:bank查看文件夹D:bank练习——使用存储过程查看表信息需求说明:查看Stu
7、dent表中的列、约束信息比较下面三个系统存储过程输出的数据库信息的特点sp_columnssp_helpconstraintsp_help提示:观察这3个系统存储过程的执行结果完成时间:15分钟如何创建存储过程定义存储过程的语法存储过程的参数和C#语言的方法一样,参数可选参数分为输入参数、输出参数输入参数允许有默认值CREATEPROC[EDURE]存储过程名@参数1数据类型=默认值OUTPUT,……,@参数n数据类型=默认值OUTPUTASSQL语句GO第一步:获得“JavaLogic”的课程编号第二步:获得“JavaLogi
8、c”最近一次的考试时间第三步:查询得到平均成绩第四步:查询这次考试成绩低于60分的学生创建、执行无参的存储过程创建存储过程,查询JavaLogic最近一次考试平均分以及未通过考试的学员名单CREATEPROCEDUREusp_GetAvgResul
此文档下载收益归作者所有