sql server 2000/2005 游标的使用操作
1. 定义游标定义
游标语句的核心是定义了一个游标标识名,并把游标标识名和一个查询语句关联起来。DECLARE语句用于声明游标,它通过SELECT查询定义游标存储的数据集合。语句格式为:
DECLARE 游标名称 [INSENSITIVE] [SCROLL]
CURSOR FOR select语句
[FOR{READ ONLY|UPDATE[OF 列名字表]}]
参数说明:
INSENSITIVE选项:说明所定义的游标使用SELECT语句查询结果的拷贝,对游标的操作都基于该拷贝进行。因此,这期间对游标基本表的数据修改不能反映到游标中。这种游标也不允许通过它修改基本表的数据。
SCROLL选项:指定该游标可用所有的游标数据定位方法提取数据,游标定位方法包括PRIOR、FIRST、LAST、ABSOLUTE n 和RELATIVE n 选项。
Select语句:为标准的SELECT查询语句,其查询结果为游标的数据集合,构成游标数据集合的一个或多个表称作游标的基表。
在游标声明语句中,有下列条件之一时,系统自动把游标定义为INSENSITIVE游标:
SELECT语句中使用了DISTINCT、UNION、 GROUP BY或HAVING等关键字;
任一个游标基表中不存在唯一索引。
其他
READ ONLY选项:说明定义只读游标。
UPDATE [OF 列名字表]选项:定义游标可修改的列。如果使用OF 列名字表选项,说明只允许修改所指定的列,否则,所有列均可修改。
例如,查询教师名字和所教的课程名,定义游标TCURSOR的语句如下 :
DECLARE TCURSOR CURSOR FOR
SELECT tname, cname
from teacher ,couse
WHERE teacher.tno = couse.tno
2. 打开游标
打开游标语句执行游标定义中的查询语句,查询结果存放在游标缓冲区中。并使游标指针指向游标区中的第一个元组,作为游标的缺省访问位置。查询结果的内容取决与查询语句的设置和查询条件。
打开游标的语句格式:
EXEC SQL OPEN 〈游标名〉
如果打开的游标为INSENSITIVE游标,在打开时将产生一个临时表,将定义的游标数据集合从其基表中拷贝过来。
SQL Server中,游标打开后,可以从全局变量@@CURSOR_ROWS中读取游标结果集合中的行数。
例1:打开前面所创建的查询教师姓名和所教课名称的游标。
OPEN tcursor
例2:显示游标结果集合中数据行数
SELECT 数据行数 = @@CURSOR_ROWS
3. 读游标区中的当前元组
读游标区数据语句是读取游标区中当前元组的值,并将各分量依次赋给指定的共享主变量。FETCH语句用于读取游标中的数据,语句格式为:
FETCH [[NEXT|PRIOR|FIRST|LAST| ABSOLUTE n| RELATIVE n]
from ] 游标名
[INTO @
相关文档:
一、索引的作用
1、帮助检索数据;
2、提高联接效率;
3、节省ORDER BY、GROUP BY的时间;
4、保证数据唯一性(仅限于唯一索引)。
二、索引的设计
在确定要建立一个索引时,首先我们要确定它是聚集还是非聚集、单列还是多列、唯一还是非唯一、列是升序还是降序、它的存储是如何的,比如:分区、填充因子等。 ......
01、SQL与ORACLE的内存分配
ORACLE的内存分配大部分是由INIT.ORA来决定的,一个数据库实例可以有N种分配方案,不同的应用(OLTP、OLAP)它的配置是有侧重的。 SQL概括起来说,只有两种内存分配方式:动态内存分配与静态内存分配,动态内存分配充许SQL自己调整需要的内存,静态内存分配限制了SQL对内存的使 用。
002、SQ ......
摘要:SQL Server Compact的安装包由三部分功能组成,并且区分CPU平台和操作系统平台,初学者往往不知道如何去区分它们。本文将对SQL Server Compact的安装包进行介绍,让你知道如何区分和选择它们。
如果你是使用Visual Studio 2005/2008开发.NET Compact Framework应用程序,并在程序中用到了SQL Server Compact数据库 ......
Oracle的数据类型
1.字符类型
•CHAR(n) 定长字符串,n字节,n的取值范围:1~2000字节。
•VARCHAR2(n) 可变长的字符串,定义时应指明最大长度,取值范围:1~ 4000字节。
•LONG 可变长字符列,最大长度限制2GB,一种较老的数据类型,逐渐被BLOB、CLOB、等大对象数据类型所取代。
2.数字类型
&bull ......