• 首页
  • 在线考场
  • 在线课程
  • 付款方式
  • 论坛交流
  • 更多
    • 考试报名
    • 成绩查询
    • QQ群联盟
    • 试题库
    • 帮助中心
    • 资料下载
设计算机等级为主页 | 注册 | 登录

考试大
  • 财会类
    • 财会类
    • 会计从业
    • 初级会计
    • 会计师
    • 注册会计师
    • 银行从业
    • 经济师
    • 资产评估
    • 统计师
    • 税务师
    • 更多>>
  • 建筑类
    • 建筑类
    • 一级建造师
    • 二级建造师
    • 造价工程师
    • 咨询工程师
    • 监理工程师
    • 房地产估价
    • 结构工程师
    • 注册建筑师
    • 土地估价师
    • 更多>>
  • 职业资格
    • 职业资格
    • 证券从业
    • 期货从业
    • 司法考试
    • 教师资格
    • 秘书资格
    • 法律顾问
    • 导游资格
    • 人力资源
    • 电子商务
    • 更多>>
  • 公务员
    • 公务员
    • 行测
    • 申论
    • 面试
    • 真题大全
    • 经验交流
    • 模拟试题
    • 公开选拔
    • 招警
    • 更多>>
  • 外贸类
    • 外贸类
    • 报关员
    • 报检员
    • 国际商务师
    • 单证员
    • 货运代理
    • 外销员
    • 物流师
    • 更多>>
  • 医药类
    • 医药类
    • 执业护士
    • 中药师
    • 西药师
    • 临床医师
    • 临床助理
    • 中医医师
    • 口腔医师
    • 公共卫生
    • 更多>>
  • 外语类
    • 外语类
    • CET4
    • CET6
    • 职称英语
    • 托福
    • 雅思
    • BEC
    • PETS
    • 金融英语
    • 更多>>
  • 学历考试
    • 学历考试
    • 高考
    • 成考
    • 考研
    • 自考
    • 中考
    • 考博
    • 在职硕士
    • 更多>>
  • 计算机类
    • 计算机类
    • 计算机二级
    • 计算机等级
    • 软件水平
    • 微软认证
    • 思科认证
    • JAVA认证
    • Linux认证
    • 华为认证
    • 更多>>
  • 全部分类
    • 全部分类
    • 所有考试
    • 更多>>

计算机等级
 首页 » IT认证考试 » 计算机等级考试
  • 考试大品牌推荐:
  • 视频课程
  • 模拟考试系统
计算机等级一级
  • 微机知识 Ms Office

  • 永中Office B WPS
计算机等级二级
  • 公共基础知识 Delphi C++ JAVA

  • C语言 Visual Basic VF Access
计算机等级三级
  • 三级PC技术 数据库

  • 信息管理 网络技术
计算机等级四级
  • 复习资料

  • 四级笔试
计算机等级考试培训课程
  • 网校课程

  • 课程试听
计算机等级考试试题
  • 在线考试 模拟题

  • 预测试题 真 题
您现在的位置:考试大 >> 计算机等级 >> 三级 >> 数据库 >> 辅导 >> 文章内容
 
站内搜索:
 
SQLServer7.0入门(七)
 来源:考试大   2006/9/16    【考试大:中国教育考试第一门户】   模拟考场   视频课程   字号:T T
  i.              声明游标
在这一步中,需要指定游标的属性和根据要求产生的结果集。有两种方法可以指定一个游标。
形式1  (ANSI 92)
DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSOR
FOR select_statement
[FOR {READ ONLY | UPDATE ][OF column_list]}]
形式2
DECLARE cursor_name CURSOR
[LOCAL | GLOBAL]
[FORWARD_ONLY | SCROLL]
[STATIC | KEYSET | DYNAMIC]
[READ_ONLY | SCROLL_LOCKS | OPTIMISTIC]
FOR select_statement
[FOR {READ ONLY | UPDATE ][OF column_list]}]
INSENSITIVE关键字指明要为检索到的结果集建立一个临时拷贝,以后的数据从这个临时拷贝中获取。如果在后来游标处理的过程中,原有基表中数据发生了改变,那么它们对于该游标而言是不可见的。这种不敏感的游标不允许数据更改。
SCROLL关键字指明游标可以在任意方向上滚动。所有的fetch选项(first、last、next、relative、absolute)都可以在游标中使用。如果忽略该选项,则游标只能向前滚动(next)。
Select_statement指明SQL语句建立的结果集。Transact SQL语句COMPUTE、COMPUTE BY、FOR BROWSE和INTO在游标声明的选择语句中不允许使用。
READ ONLY指明在游标结果集中不允许进行数据修改。
UPDATE关键字指明游标的结果集可以修改。
OF column_list指明结果集中可以进行修改的列。缺省情况下(使用UPDATE关键字),所有的列都可进行修改。
LOCAL关键字指明游标是局部的,它只能在它所声明的过程中使用。
GLOBAL关键字使得游标对于整个连接全局可见。全局的游标在连接激活的任何时候都是可用的。只有当连接结束时,游标才不再可用。
FORWARD_ONLY指明游标只能向前滚动。
STATIC的游标与INSENSITIVE的游标是相同的。
KEYSET指明选取的行的顺序。SQL Server将从结果集中创建一个临时关键字集。如果对数据库的非关键字列进行了修改,则它们对游标是可见的。因为是固定的关键字集合,所以对关键字列进行修改或新插入列是不可见的。
DYNAMIC指明游标将反映所有对结果集的修改。
SCROLL_LOCK是为了保证游标操作的成功,而对修改或删除加锁。
OPTIMISTIC指明哪些通过游标进行的修改或者删除将不会成功。
注意:
· 如果在SELECT语句中使用了DISTINCT、UNION、GROUP BY语句,且在选择中包含了聚合表达式,则游标自动为INSENSITIVE的游标。
· 如果基表没有唯一的索引,则游标创建成INSENSITIVE的游标。
· 如果SELECT语句包含了ORDER BY,而被ORDER BY的列并非唯一的行标识,则DYNAMIC游标将转换成KEYSET游标。如果KEYSET游标不能打开,则将转换成INSENSITIVE游标。使用SQL ANSI-92语法定义的游标同样如此,只是没有INSENSITIVE关键字而已。
                       ii.              打开游标
打开游标就是创建结果集。游标通过DECLARE语句定义,但其实际的执行是通过OPEN语句。语法如下:
OPEN { { [GLOBAL] cursor_name } | cursor_variable_name}
GLOBAL指明一个全局游标。
Cursor_name是被打开的游标的名称。
Cursor_variable_name是所引用游标的变量名。该变量应该为游标类型。
在游标被打开之后,系统变量@@cursor_rows可以用来检测结果集的行数。@@cursor_rows为负数时,表示游标正在被异步迁移,其绝对值(如果@@cursor_rows为-5,则绝对值为5)为当前结果集的行数。异步游标使用户在游标被完全迁移时仍然能够访问游标的结果。
                      iii.              从游标中取值
在从游标中取值的过程中,可以在结果集中的每一行上来回移动和处理。如果游标定义成了可滚动的(在声明时使用SCROLL关键字),则任何时候都可取出结果集中的任意行。对于非滚动的游标,只能对当前行的下一行实施取操作。结果集可以取到局部变量中。Fetch命令的语法如下:
FETCH [NEXT | PRIOR| FIRST | LAST | ABSOLUTE {n | @nvar} | RELATIVE {n | @nvar}]
FROM [GLOBAL] cursor_name} | cursor_variable_name}
[INTO @variable_name ][,……n]]
NEXT指明从当前行的下一行取值。
PRIOR指明从当前行的前一行取值。
FIRST是结果集的第一行。
LAST是结果集的最后一行。
ABSOLUTE n表示结果集中的第n行,该行数同样可以通过一个局部变量传播。行号从0开始,所以n为0时不能得到任何行。
RELATIVE n表示要取出的行在当前行的前n行或后n行的位置上。如果该值为正数,则要取出的行在当前行前n行的位置上,如果该值为负数,则返回当前行的后n行。来源:考试大-计算机等级考试

责编:yunyun  纠错

上一页12下一页
  • 打印
  • RSS
  • 发表评论
  • 返回首页
  • 收藏本页
上一篇文章:SQLServer7.0入门(八)
下一篇文章:SQLServer7.0入门(六)
文章搜索: 
模拟考场 网络课堂 论坛交流 考试大百科
 相关文章
·SQLServer存储多语言数据的几种方法
·在SQLSERVER中实现RSA加密算法
·SQLServer数据存储与NTFS簇的大小
·关于SQLServer中的字符存储的问题的测试
·利用SQL05特性删除表中重复数据
·Windows环境下初始化mysql
·SQL冗余字段的策略和管理
热点动态
考试报名
成绩查询
备考辅导
试题排行
在线考试
综合指导
计算机等级百科
更多..
论坛热帖
更多..