第8章 数据库的编程.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Fetch Cursor 使用Fetch操作,可以使游标移动到下一个记录,并将游标返回的每个列的数据分别赋值给声明的本地变量。 * fetch c1 into @sno,@sname,@sdept; Close Cursor Close c1; * Release Cursor deallocate c1; * 完整例子 declare c1 cursor for Select sno,cno,grade from sc declare @sno varchar(5); declare @cno varchar(5); declare @grade float; declare @level char(1) open c1; fetch c1 into @sno,@cno,@grade; while @@FETCH_STATUS=0 begin if @grade=90 set @level=A else if @grade=80 set @level=B else if @grade=70 set @level=C else if @grade=60 set @level=D else set @level=E print @sno+ +@cno+ +cast(@grade as varchar)+ +@level fetch c1 into @sno,@cno,@grade; end close c1; deallocate c1; 8.5 存储过程 存储过程(Stored Procedure)可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是SQI语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量,有条件执行以及其他强大的编程功能。 存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数,输出参数、返回单个或多个结果集以及返回值。 存储过程是封装重复性工作的一种方法。存储过程支持用户声明的变量、条件执行和其他有用的编程功能。 An Introduction to Database System 创建存储过程语法 CREATE PROC[EDURE] procedure_name [ {@ parameter data_type} [= default] [OUTPUT] ] [,... n] AS sql_statement [... n] An Introduction to Database System 举例 Create Procedure msp_getStu @sdept varchar(15) as Select * from student where sdept = @sdept 执行存储过程 方法1: exec msp_getStu is 方法2: exec msp_getStu @sdept=is 方法3: declare @s varchar(15) set @s=is exec msp_getStu @sdept=@s An Introduction to Database System Output参数 An Introduction to Database System CREATE PROCEDURE dbo.mathtutor @m1 smallint, @m2 smallint, @result smallint OUTPUT AS SET @result = @m1 * @m2 DECLARE @answer smallint EXECUTE mathtutor 5, 6, @answer OUTPUT SELECT The result is: , @answer The result is: 30 Creating Stored Procedure Executing Stored Procedure Results of Stored Procedure 8.6 函数 SQL Server 允许用户创建自定义函数,自定义函数可以有返回值。 自定义函数分为:标量值函数或表值函数 如果 RETURNS 子句指定一种标量数据类型,则函数为标量值函数。可以使用多条 Transact-SQL 语句定义标量值函数。 如果 RETURNS 子句指定 TABLE,则函数为表值函数。 表值函数又可分为:内嵌表值函数(行内函数)或多语句函数 如果 RETURNS 子句指定的 TABLE 不附带列的列表,则该函数为内嵌表值函数。 如果

文档评论(0)

wuxilove + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档