SQL Server教程第14章函数的创建与管理.doc

SQL Server教程第14章函数的创建与管理.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL Server教程第14章函数的创建与管理

学校 教 师 教 案 课 程 班 级 上课时间 任课教师 课 时 审 签 教 材 SQL Server 2005实用教程 参考材料 章 节 第14章 函数的创建与管理 14.1 函数概述 14.2 创建和执行函数 14.3 管理函数 教学目标 掌握SQL Server 2005中各种类型的函数的特点。 掌握标量函数的基本创建和使用方法。 掌握内联表值函数的基本创建和使用方法。 掌握多语句表值函数的基本创建和使用方法。 掌握函数的基本管理方法。 教学重点 教学难点 教学工具 第14章 函数的创建与管理 14.1 函数概述 1. 用户自定义函数的优点 2. 用户自定义函数的分类 (1) 确定性函数与非确定性函数 (2) 标量函数与表值函数 14.2 创建和执行函数 1. 创建并执行标量函数 创建标量函数的基本语法如下所示。 CREATE FUNCTION [SchemaName.] FunctionName ( [{ @parameter DataType } [ = Default ] [ ,...n ]]) RETURNS ReturnDataType [ WITH {ENCRYPTION| SCHEMABINDING| ENCRYPTION, SCHEMABINDING }] AS BEGIN FunctionBody RETURN ScalarExpression END 例14-1 在数据库BlueSkyDB中创建一个函数FunBookSale,该函数根据给定的书号返回该图书销售的数量。 USE BlueSkyDB GO CREATE FUNCTION FunBookSale (@bookID int) RETURNS int AS BEGIN DECLARE @quantity int SELECT @quantity=SUM(quantity) FROM OrderItems WHERE bookID=@bookID IF(@quantity IS NULL) SET @quantity=0 RETURN @quantity END GO 例14-2 查看函数FunBookSale定义的文本。 USE BlueSkyDB SELECT definition FROM sys.sql_modules WHERE object_id=OBJECT_ID(FunBookSale) 图14-1 查询函数FunBookSale定义的文本的结果 GO 执行的结果如图14-1所示。 例14-3 在查询语句中调用函数FunBookSale,显示每本图书的详细信息以及该图书销售总数量。 USE BlueSkyDB GO SELECT *, dbo.FunBookSale(bookID) AS SaleQuantity FROM Books GO 执行的结果如图14-2所示。 图14-2 调用函数FunBookSale的结果 2. 创建并执行内联表值函数 创建内联表值函数的基本语法如下所示。 CREATE FUNCTION [SchemaName.] FunctionName ( [{ @parameter DataType } [ = Default ] [ ,...n ]]) RETURNS TABLE [ WITH {ENCRYPTION| SCHEMABINDING| ENCRYPTION, SCHEMABINDING }] AS RETURN (SelectStatement) 例14-4 在数据库BlueSkyDB中创建一个函数FunBookSelect,根据用户提供的图书类别查看相应类别图书的详细信息,加密该存储过程定义的文本。该存储过程需要一个输入参数,表示图书的类别名称。 USE BlueSkyDB GO CREATE FUNCTION FunBookSelect(@categoryName nvarchar(50)) RETURNS TABLE WITH ENCRYPTION AS RETURN (SELECT b.* FROM Books b JOIN Categories c ON b.categoryCode=c.categoryCode WHERE c.categoryName=@categoryName ) GO 例14-5 调用函数FunBookSelect,查看类别名称为“计算机”的图书的信息。 USE BlueSkyDB GO SELECT *

文档评论(0)

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

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

1亿VIP精品文档

相关文档