用户自定义函数与事务.ppt
《用户自定义函数与事务.ppt》由会员分享,可在线阅读,更多相关《用户自定义函数与事务.ppt(24页珍藏版)》请在三一办公上搜索。
1、SQL Server 2000 实用教程实用教程,函数是由一个或多个 Transact-SQL 语句组成的子程序。SQL Server 2000 支持三种用户定义函数:标量函数、内嵌表值函数、多语句表值函数。本章介绍用户定义函数的创建、修改及删除。事务是作为单个逻辑工作单元执行的一系列操作,这些操作要么全部执行,要么都不执行。SQL Server 2000 使用锁确保事务完整性和数据库一致性,锁可以防止用户读取正在由其他用户更改的数据,并可以防止多个用户同时更改相同数据。本章介绍如何定义事务进行数据处理并详细说明了锁定机制中锁的粒度、不同类型的锁的特点。,SQL Server 2000 实用教
2、程实用教程,10.1用户自定义函数简介,SQL Server 不但提供了系统内置函数,而且还允许用户根据实际需要创建用户自定义函数。用户自定义函数是由一条或多条TransactSQL语句组成的子程序,保存在数据库内。它可以具有多个输入参数,并返回一个标量值(单个数据值)或一个表。SQL Server支持三种类型的用户自定义函数:标量(Scalar)函数、内嵌表值(InLine TableValued)函数、多语句表值(MultiStatement TableValued)函数。,SQL Server 2000 实用教程实用教程,10.2创建用户自定义函数,创建用户自定义函数有两种方法:一种是使
3、用企业管理器,另一种是使用查询分析器。,SQL Server 2000 实用教程实用教程,10.2创建用户自定义函数,使用企业管理器创建用户自定义函数 使用企业管理器创建用户自定义函数的步骤如下:(1)展开服务器,展开数据库。(2)右击“用户定义的函数”,在弹出的菜单中选择“新建用户定义的函数”命令,屏幕显示如图10.1所示的用户自定义函数属性窗口。(3)在“用户自定义函数属性窗口”的“文本”栏内输入函数内容。(4)单击“确定”按钮,完成用户自定义函数的创建。,SQL Server 2000 实用教程实用教程,10.2创建用户自定义函数,使用TransactSQL语言创建用户自定义函数 在查询
4、分析器中,创建用户自定义函数是使用CREATE FUNCTION语句来完成的。1标量函数 标量函数类似于系统内置函数。函数的输入参数可以是所有标量数据类型,输出参数的类型可以是除了Text、NText、Image、Cursor、Timestamp以外的任何数据类型,函数主体在BEGINEND块中定义。,SQL Server 2000 实用教程实用教程,10.2创建用户自定义函数,2内嵌表值函数 内嵌表值函数没有函数体,其返回的表是单个SELECT语句的结果集。由于视图不支持在WHERE子句的搜索条件中使用参数,内嵌表值函数可弥补视图的这一不足之处,即内嵌表值函数可用于实现参数化的视图功能。3多
5、语句表值函数 多语句表值函数的函数体在BEGINEND块中定义。函数体可以包含多条TransactSQL语句,这些语句可生成行并将行插入将返回的表中。由于视图只能包含单条SELECT语句,而多语句表值函数可包含多条TransactSQL语句。因此,多语句表值函数的功能比视图更强大。此外,多语句表值函数还可替换返回单个结果集的存储过程。,SQL Server 2000 实用教程实用教程,10.3修改、删除用户自定义函数,1修改用户自定义函数 使用企业管理器修改用户自定义函数的步骤如下:(1)展开服务器,展开数据库。(2)单击“用户定义的函数”,在详细列表框中双击需修改用户自定义函数名称,屏幕显示
6、如如图10.1所示的用户自定义函数属性窗口。(3)在“用户自定义函数属性窗口”的“文本”栏内修改函数内容。(4)单击“应用”按钮,再单击“确定”按钮,完成用户自定义函数的修改。在查询分析器中,修改用户自定义函数使用ALTER FUNCTION语句。,SQL Server 2000 实用教程实用教程,10.3修改、删除用户自定义函数,2删除用户自定义函数使用企业管理器删除用户自定义函数的步骤如下:(1)展开服务器,展开数据库。(2)单击“用户定义的函数”,在详细列表框中右击需修改用户自定义函数名称,在弹出的菜单中选择“删除”命令。(3)单击“全部移去”按钮,删除用户自定义函数。在查询分析器中,删
7、除用户自定义函数使用DROP FUNCTION语句。,SQL Server 2000 实用教程实用教程,10.4事务处理,事务简介 事务是一个逻辑工作单元,其中包括了一系列的操作,这些操作要么全部执行,要么都不执行。典型的事务实例是两个银行之间的转账,账号A转出1000元至账号B,这笔转账业务可分解为:(1)账号A减去1000元;(2)账号B增加1000元。当然,要求这两项操作要么同时成功(转账成功),要么同时失败(转账失败)。只有其中一项操作成功则是不可接受的事情。如果确实发生了只有其中一项操作成功的话,那么应该撤消所做的操作(回滚事务),就好象什么操作都没有发生一样。事务具有4个属性:原子
8、性、一致性、隔离性、持久性。简称为ACID属性。原子性(Atomicity):事务必须作为工作的最小单位,即原子单位。其所进行的操作要么全部执行,要么都不执行。一致性(Consistency):每个事务必须保证数据的一致性。事务完成后,所有数据必须保持其合法性,即所有数据必须遵守数据库的约束和规则。,SQL Server 2000 实用教程实用教程,10.4事务处理,隔离性(Isolation):一个事务所做的修改必须与其他事务所做的修改隔离。一个事务所使用的数据必须是另一个并发事务完成前或完成后的数据,而不能是另一个事务执行过程的中间结果。也就是说,两个事务是相互隔离的,其中间状态的数据是不
9、可见的。持久性(Durability):事务完成后对数据库的修改将永久保持。在SQL Server 2000中,事务的模式可分为:显式事务、隐式事务、自动事务。显式事务:由用户自己使用TransactSQL语言的事务语句定义的事务,具有明显的开始和结束标志。,SQL Server 2000 实用教程实用教程,10.4事务处理,隐式事务:SQL Server为用户而做的事务。例如:在执行一条INSERT语句时,SQL Server将把它包装到事务中,如果执行此INSERT语句失败,SQL Server将回滚或取消这个事务。用户可以通过执行以下命令使SQL Server进入或退出隐式事务状态:SE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 用户 自定义 函数 事务
链接地址:https://www.31ppt.com/p-6592230.html