1创建和执行存储过程.pptxVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

数据库设计与实现

创建和执行存储过程

杨阳

存储过程

学习目标:

理论目标:理解存储过程的运行过程

实践目标:掌握存储过程的创建和执行的操作

存储过程

存储过程的概念

存储过程(StoredProcedure)类似于C语言中的函数,它是一组为了完成特定功能的T-SQL语句集合。存储过程存储在数据库内,可以有用户的应用程序,通过指定存储过程名称及相关参数来执行。

存储过程

存储过程的优点。

1.模块化的程序设计,实现代码多次调用。存储过程只需创建一次,并存储在数据库中,在以后的使用中,便可重复调用,不需要每次重新编写。

2.加快执行速度。如果某一操作包含大量的或者需多次执行的代码,存储过程要比T-SQL代码执行速度要快。因为创建存储过程时,已经被分析和优化,但是对于T-SQL代码,每次执行时都要进行编译和优化。

3.减少网络流量。使用存储过程,可以调用需要若干行T-SQL代码的操作,而不需要通过网络传送这些代码。

4.可以作为安全机制。对用户只授予执行存储过程的权限,而不授予用户直接访问相应表的权限,这样既保证了用户操作数据库中的数据,又能保证用户不能访问相应的表,保证数据的安全。

存储过程

存储过程的分类

1.系统存储过程。系统存储过程是一组预编的T-SQL语句,提供了管理数据库和更新表的功能,系统存储过程位于master数据库和msdb数据库,并且所有的存储过程的名称均为sp_*形式。例如sp_databases,代表列出服务器所有的数据库,2.用户定义的存储过程。由用户创建并能完成某种特定功能的存储过程,分为:

T-SQL存储过程:指保存的T-SQL语句集合,可以接受和返回用户提出的参数。

CLR存储过程:指对Microsoft.NETFramework公共语言运行时方法的引用,可以接受和返回用户提供的参数。在.NETFramework程序集中作为类的公共静态方法实现的。

3.扩展存储过程。扩展存储过程是SQLServer实例可以动态加载和运行的DLL。扩展存储过程是使用SQLServer扩展存储过程API编写的,可直接在SQLServer实例的地址空间中运行。

创建与执行存储过程

【例8-1】为数据库“Librarymanage”创建一个存储过程,存储过程名称为Booksearch,该存储过程在“Bookinfo”中查询书籍“数据库”的具体情况。

1.打开[对象资源管理],左键单击展开“[数据库]-[Librarymanage]-[可编程性]”节点,选择存储过程节点,单击右键弹出菜单,左键点击“新建存储过程”命令。

2.在[查询编辑器]中出现存储过程的编程模板,在模板上通过编写T-SQL代码,创建存储过程。

3.单击“执行”按钮,运行成功后,在[对象资源管理]窗口,首先,右键单击“[存储过程]”节点,点击“刷新”按钮,然后左键单击展开“[存储过程]”节点,可以看到新建的存储过程Booksearch。

4.创建完新的存储过程,在[对象资源管理]窗口,首先,右键单击已创建的存储过程dbo.Booksearch弹出菜单,左键点击“执行存储过程”命令。

创建与执行存储过程

使用T-SQL创建存储过程,其语法如下:

CREATEPROC[EDURE]存储过程名

{@参数1数据类型}[=默认值][OUTPUT],…

{@参数n数据类型}[=默认值][OUTPUT]

AS

[BEGIN]

T-SQL语句

[END]

使用T-SQL语句进行调用,语法如下:

EXEC存储过程名称

[参数表]

创建与执行存储过程

【例8-2】为数据库“Librarymanage”创建一个存储过程“sp_bookquantity”,该存储过程在“Bookinfo”表中查询剩余数量少于5本的书籍的编号、书名、作者、出版社和剩余数量。

单击“新建查询”按钮,在[查询编辑器]中输入以下代码。

USELibrarymanage

GO

CREATEPROCEDUREsp_bookquantity

AS

BEGIN

SELECTBook_ID,Book_name,Book_author,Book_press,Book_price,Book_quantity

FROMBookinfoWHEREBook_quantity5

END

单击“执行”按钮,即创建了存储过程“sp_bookquantity”。

创建与执行存储过程

调用此存储过程:EXECsp_bookquantity

结果如图

创建与执行存储过程

【例8-3】为数据库“Librarymanage”创建一个存储过程“proc_bookname”,该存储过程根据使用者输入的书名在“Bookinfo”表

文档评论(0)

可爱的家人6536 + 关注
实名认证
文档贡献者

可爱的家人

1亿VIP精品文档

相关文档