数据库原理与应用SQL Server 2005项目教程-电子教案-郭庚麒 第九章
35页1、数据库原理与应用 SQL Server 2005项目教程,主编 郭庚麒 王槐彬,中国水利水电出版社,第九章 T-SQL语言的高级应用,知识要点,用户定义函数的基本概念及使用,存储过程的基本概念及使用,游标的基本概念及使用,事务的基本概念及使用,触发器的基本概念及使用,项目实景,在数据库的开发中,可能会遇到这样的一些需求: 编好的SQL查询代码可以被其他开发人员或者程序调用以提高开发效率。 出于安全考虑需要对用户隐藏表的细节,但又可以让用户操作数据。 客户端程序中冗长的SQL查询语句运行的时候占用带宽,效率低下,希望把这些代码转移到SQL Server服务器上去存储和执行,并且预先编译好以提高执行效率。 SQL Server中提供的存储过程可以很好地解决上面的问题。存储过程可以把SQL 代码组织成为可以重复调用的代码块,在服务器端编译执行。 解决代码重用的另一个好方法是定义函数。使用用户定义函数开发程序,可以简化问题,提高效率。 在企业中,数据库开发人员可以使用用户定义函数、存储过程、游标、事务、触发器实现复杂的逻辑,进行数据操作或者实现数据的完整性。合理利用它们可以优化性能并增强安全性
2、,更好地开发和维护应用程序。,项目目标,学习完本章后,读者应该能够完成以下任务:实现对数据库中用户定义函数、存储过程、游标、事务、触发器的创建和使用。,9.1 用户定义函数,有没有这样一种方法,它既能封装一些复杂的T-SQL代码,并根据需要设置函数,同时又能返回程序所需的值呢? 上面提问的答案是肯定的。函数是由一条或多条T-SQL语句组成的代码段,用于实现一些常用的功能。编写好的函数可以重复使用。在SQL Server中,除了可以使用系统内置函数外,还允许创建用户定义函数。 用户定义函数是接受参数、执行操作(例如复杂计算)并将操作结果以值的形式返回的例程。参数是零个或多个输入参数,但不支持输出参数,返回值可以是单个标量值或结果集。可以使用CREATE FUNCTION语句创建,使用ALTER FUNCTION 语句修改,以及使用DROP FUNCTION语句删除。 SQL Server支持3种用户定义函数:标量函数、内嵌表值函数、多语句表值函数。,9.1.1 标量函数,标量函数根据输入参数值的不同来获得不同的函数值,在标量函数中可以使用多个输入参数,而函数的返回值是单个数据值。 标量函
3、数的函数体可包括一条或多条T-SQL语句。这些T-SQL语句以BEGIN开始,以END结束;用RETURNS子句定义该函数返回值的数据类型,用RETURN语句返回该函数的值。,基本语法格式如下: CREATE FUNCTION 函数名称 ( 参数名称 标量数据类型 = 默认值 ,.n ) RETURNS 标量返回值类型 AS BEGIN 函数体 RETURN 标量表达式 END,各参数含义: 函数名称 用户定义函数的名称。函数名称必须符合标识符的规则,对其所有者来说,该名称在数据库中必须是唯一的。 参数名称 用户定义函数的参数,使用符号作为第一个字符来指定参数名称。参数名称必须符合标识符的规则。函数最多可以有1024个参数。函数执行时每个已声明参数的值必须由用户指定,除非该参数的默认值已经定义。 标量数据类型 参数的数据类型。所有标量数据类型(包括 bigint 和 sql_variant)都可用作用户定义函数的参数。 标量返回值类型 是标量用户定义函数的返回值。标量返回值类型可以是 SQL Server 支持的任何标量数据类型(text、ntext、image、cursor 和 ti
4、mestamp 除外)。 标量表达式 指定标量函数返回的标量值。,9.1.1 标量函数,9.1.1 标量函数,【例9-1】下面的SQL语句在数据库中创建了一个CubicVolume的用户定义函数,然后使用该函数计算一个长方体的体积。 CREATE FUNCTION fn_CubicVolume (CubeLength decimal(4,1),CubeWidth decimal(4,1),CubeHeight decimal(4,1) RETURNS decimal(12,3) AS BEGIN RETURN (CubeLength * CubeWidth * CubeHeight) END GO PRINT 长、宽、高分别为6、4、3的立方体的体积 =+STR(dbo.fn_CubicVolume(6,4,3) GO,9.1.1 标量函数,执行结果是: 长、宽、高分别是6、4、3的立方体的体积 = 72.000 对于返回标量值的标量函数,可以在T-SQL语句中允许相同数据类型的标量表达式中进行调用。调用时至少应使用函数的两部分名称,即使是所有者本人也必须如此。其语法格式如下: 所有者
《数据库原理与应用SQL Server 2005项目教程-电子教案-郭庚麒 第九章》由会员E****分享,可在线阅读,更多相关《数据库原理与应用SQL Server 2005项目教程-电子教案-郭庚麒 第九章》请在金锄头文库上搜索。
逍遥游复习 知识点整理
近现代法德关系史 高三展示课3稿
当代大学生人生信仰及追求的调查研究
长相思 纳兰性德-ppt课件
课件:危机意识 一
英语ppt演讲关于阿甘正传
发达国家基础教育改革的动向与趋势 修改版
中国民间美术 课件.ppt
生物质发电技术与系统 课程ppt 第1章 生物质发电技术现状及发展趋势 2学时 -----2016
现代信号处理思考题 含答案
执业药师继续教育 抑郁症的药物治疗 100分
小学生的成长档案模板不用修改 万能型
增订六版 现代汉语 上册 第二章文字 思考与练习答案
国家财政ppt课件
加拿大英语介绍
六年级统计图的选择课件
中学生成长档案ppt
中国现代文学史期末复习整理
lohi和hihilo训练对女子赛艇运动员运动能力影响的比较研究
风雨贾平凹阅读答案
2024-04-11 25页
2024-04-11 37页
2024-04-11 28页
2024-04-11 31页
2024-04-11 36页
2024-04-11 29页
2024-04-11 22页
2024-04-11 27页
2024-04-11 34页
2024-04-11 32页