SQLServer数据库应用第十章.ppt

SQLServer数据库应用第十章.ppt

ID:52268376

大小:234.01 KB

页数:49页

时间:2020-04-03

SQLServer数据库应用第十章.ppt_第1页
SQLServer数据库应用第十章.ppt_第2页
SQLServer数据库应用第十章.ppt_第3页
SQLServer数据库应用第十章.ppt_第4页
SQLServer数据库应用第十章.ppt_第5页
资源描述:

《SQLServer数据库应用第十章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十章用户自定义函数1什么是函数?是一组编译好的Transact-SQL语句,他们可以带一个或一组数值做参数,也可以不带参数,它返回一个数值、数值集合,或执行一些操作。函数能够重复执行一些操作,从而避免不断重写代码。2函数类型:SQLServer2005支持用户定义函数和内置函数。内置函数是一组预定义的函数,是Transact-SQL语言的一部分,按Transact-SQL参考中定义的方式运行且不能修改。310.1用户自定义函数概述用户定义函数是用户定义的Transact-SQL函数,它可以拥有零个、一个或多个参数,必须

2、返回单一的返回值。返回值可以是单个数值,也可以是一个表。4用户定义函数种类返回可更新数据表的函数返回不可更新数据表的函数返回标量值的函数若函数含单个SELECT语句且可更新,则返回的数据表可更新若函数含多个SELECT语句或一个不可更新的SELECT语句,则返回的数据表不可更新510.2创建用户自定义函数10.2.1创建用户自定义函数CREATEFUNCTION[ower-name,]function-name([{@parameter-namescalar_parameter_datetype[=default]}[,

3、…n]])参数名,局部变量参数数据类型6RETURNSscalar_return_datatype[WITH[,…n]][AS]BEGINsql-statementRETURNscalar-expressionEND用户自定义函数的返回值函数中返回值的表达式7SCHEMABINING选项可将函数绑定到它所引用的数据库对象function-optionENCRYPTION选项可以实现SQLServer加密包含CREATEFUNCTION语句文本的系统表列8例:在Northwind库上创建自

4、定义函数my_function1,该函数实现输入代表商品年销售额的money类型参数的值后返回字符串,如果年销售额大于10000,返回“热销商品”,否则返回“非热销商品”9USENorthwindgoCREATEFUNCTIONmy_function1(@moneyinputmoney)RETURNSnvarchar(5)10BEGINDECLARE@returnstringnvarchar(5)IF@moneyinput<10000SET@returnstring='非热销商品'ELSESET@returnstring

5、='热销商品'RETURN@returnstringEND11在Northwind库上有一个记录各种产品在1997年销售额的视图,通过它来引用新建的my_function1,查看哪些商品属于热销商品USENorthwindgoSELECTProductName,ProductSales,dbo.my_function1(ProductSales)ASDiscriptionFROM[Productsalesfor1997]WHERECategoryName=’DairyProducts’121310.2.2查看用户自定义函

6、数自定义函数的名称保存在sysobjects系统表中创建自定义函数的源代码保存在syscomments系统表中141.使用系统存储过程查看EXECsp_help(sp_helptext)例:用系统存储过程sp_helptext查看用户自定义函数my_funciton1的定义文本信息USENorthwindgoEXECsp_helptextmy_function1go15162.使用系统表或系统信息架构视图在SQLServer中存在三个信息架构视图报告有关用户自定义函数的信息ROUTINESP

7、ARAMETERSROUTINE_COLUMNS这些信息架构视图也是基于系统表sysobjects和syscomments实现的17例:使用系统表sysobjects查看数据库Northwind上存在的所有用户自定义函数的相关信息。USENorthwindSELECT*fromsysobjectsWHEREtype='FN'go1810.3用户自定义函数类型自定义函数有三种类型标量函数内嵌表值函数多语句表值函数1910.3.1标量函数标量函数返回在RETURNS子句中定义的数据类型的单个数据值标量函数可重复调用20例:创

8、建标量函数,要求将当前系统日期转化为年月日格式的字符串并返回,且默认的分隔符为‘::’,并允许用户自行定义分隔符21CREATEFUNCTIONmy_function2(@DATEdatetime,@separatornvarchar(2)='::')RETURNSnvarchar(20)BEGINDECLARE@r

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。