文档介绍:第7章 SQL高级应用*
本章要点
本章介绍SQL Server 2005中大值数据类型、事务、游标、分布式查询及XML数据类型等概念。SQL Server 2005中引入了max说明符来说明大值数据类型,并增强了对大值数据类型的使用功能,通过使用大值数据类型,系统能更高效地存储和检索大型字符、Unicode和二进制数据;事务是数据库实现数据一致性最重要的手段,是一种比批处理更完善的编程结构,事务处理通过加锁机制来保证数据并发的完整性;游标提供了一种对查询结果集中数据一次一记录式处理的功能;分布式查询及XML数据类型能更广泛而多样地操作数据。
本章主要介绍如下内容:使用大值数据类型、联机事务处理、游标、分布式查询、XML数据类型基本操作等。
本章目录
使用大值数据类型
联机事务处理
游标
分布式查询
SQL SERVER 2005的XML技术
练习题7
上机实习6
使用大值数据类型
关于大值数据类型
大值数据类型使用概述
BULK INSERT
sp_tableoption
OPENROWSET
返回本节首页
关于大值数据类型
返回本节首页
SQL Server 2005中引入了max说明符。此说明符增强了varchar、nvarchar和varbinary数据类型的存储能力。varchar(max)、nvarchar(max)和varbinary(max)统称为大值数据类型。您可以使用大值数据类型来存储最大为2^31-1个字节的数据。
大值数据类型在行为上和与之对应的较小的数据类型varchar、nvarchar和varbinary相似。这种相似使SQL Server能够更高效地存储和检索大型字符、Unicode和二进制数据。
有了大值数据类型,使用SQL Server的方式是使用早期版本的SQL Server中的text、ntext和image数据类型所不可能具有的。例如,在SQL Server 2005中,您可以定义能存储大量数据(最多可达2^31字节的字符、整数和Unicode数据)的变量。
大值数据类型和SQL Server早期版本中与之对应的数据类型之间的关系:varchar(max)与text对应;nvarchar(max)与ntext对应;varbinary(max)与image对应。
重要事项:以后请尽量使用varchar(max)、nvarchar(max)和varbinary(max)数据类型。因为在SQL Server的未来版本中将删除ntext、text和image数据类型。
大值数据类型使用概述
返回本节首页
大值数据类型在行为上和与之对应的较小的数据类型varchar(n)、nvarchar(n)和varbinary(n)相同。下面是大值数据类型在某些特定情形下的使用:
1)游标:由于可以定义大值数据类型变量,便可以将FETCH返回的大值数据类型列中的数据赋给本地变量。使用大值数据类型不影响游标的强制实施游标类型转换用法。
2)成块更新:( )子句对基础大值数据列进行部分更新。这类似于SQL Server早期版本中所支持的对text、ntext、image数据类型的文本指针操作、WRITETEXT和UPDATETEX。
3)触发器:支持对插入的和删除的表中的大值数据类型列引用上使用AFTER触发器。
4)字符串函数:内置的可操作字符和二进制数据的字符串函数有所增强,可支持大值数据类型的参数。这些函数包括:COL_LENGTH、CHARINDEX、PATINDEX、LEN、DATALENGTH、SUBSTRING。可与ntext、text或image数据一起使用的函数有:DATALENGTH、PATINDEX、SUBSTRING、TEXTPTR、TEXTVALID;一起使用的语句有:READTEXT、SET TEXTSIZE、UPDATETEXT、WRITETEXT。
BULK INSERT
返回本节首页
BULK INSERT命令实现以用户指定的格式将数据文件加载至数据库表或视图中。语法:
BULK INSERT [database_name.[schema_name].|schema_name.][table_name|view_name] FROM 'data_file' [WITH(选项略)] -- 参数说明略,下面举例说明:
例7-7 使用管道从文件导入数据,