解析

本文由网龙AE产品自动生成

数据挖掘研究院

游标定位

当游标打开之后,它位于结果集的第一行之前。您可以将游标移到以查询结果的开头或结尾作为参照的一个绝对位置,或者移到以当前游标位置作为参照的一个相对位置。如何更改游标位置以及可以执行什么操作的细节是受编程接口约束的。

游标中可读取的行位置数受整数的大小制约。您最多可以读取到第2147483646 行,这个数字比可以在整数中保存的值小 1。在使用负数(从末尾开始计算行数)时,您最多可以读取到的行数比整数中可保存的最大负值大 1。

您可以使用特殊定位的更新操作和删除操作来更新或删除位于游标当前位置的行。如果游标位于第一行之前或最后一行之后,那么将返回 " 没有当前的游标行 " 错误。

游标定位问题

对敏感性未定型游标的插入和某些更新会导致游标定位发生问题。

Adaptive Server Anywhere 不将插入的行放在游标内可预测的位置,除非在 SELECT 语句上有 ORDER BY 子句。在有些情况下,插入的行要等到关闭并再次打开游标后才会出现。

使用 Adaptive Server Anywhere 时,如果需要创建工作表来打开游标,就会发生这种情况 UPDATE 语句可能导致行在游标中移动。如果游标有使用现有索引的ORDER BY 子句 (不必创建工作表),会发生这种情况。使用 STATIC SCROLL 游标会缓解这些问题,但需要更多的内存和处理。

在打开时配置游标

您可以在打开游标时配置游标行为的以下几个方面:

隔离级别 您可以将游标上操作的隔离级别显式设置为不同于事务的当前隔离级别。为此,请设置 ISOLATION_LEVEL 选项。

保存

缺省情况下,嵌入式 SQL 中的游标在事务结束时关闭。游标 WITH HOLD 打开之后,您可以让它保持打开状态,直到连接结束,或者,直到您将它显式关闭。缺省情况下, ODBC、 JDBC 和 Open Client 在事务结束时会让游标保持打开状态。

使用游标处理查询的结果集的最简单方式是在结果集的所有行中循环,直到没有行为止。

在结果集的行中循环:

1.声明和打开游标 (嵌入式 SQL),或者执行返回结果集的语句(ODBC、 JDBC、 Open Client)或 AsaDataReader 对象(ADO.NET)。

2.继续读取下一行,直到您得到 " 未找到行 " 错误。

3.关闭游标。

此操作的步骤 2 如何执行取决于您使用的接口。例如:

ODBC SQLFetch、 SQLExtendedFetch 或 SQLFetchScroll 让游标前进到下一行并返回数据。

ADO.NET 使用 AsaDataReader.NextResult 方法。嵌入式 SQLFETCH 语句执行相同的操作。

JDBC ResultSet:对象的 next 方法让游标前进并返回数据。

Open Client ct_fetch:函数将游标前进到下一行并返回数据。

(责任编辑:卢兆林)

[数据挖掘专家] [数据挖掘研究院] [数据挖掘论坛] [数据挖掘实验室]
上一篇:一次读取多行这种方式是怎样改善性能的 ― .
下一篇:带你轻松接触Sybase备份软件的插件模块
最新评论共有 0 位网友发表了评论 , 查看所有评论
发表评论( 不能超过250字,需审核,请自觉遵守互联网相关政策法规。 )
匿名?
数据挖掘网站导航 数据挖掘论坛导航
  • 数据挖掘工具
  • 数据挖掘论坛
  • DataCruncher - Cognos
  • MineSet - MathSoft
  • Intelligent Miner - GainSmarts
  • Sqlserver - SAS - Clementine
  • CART - Weka - WizSoft
  • NeuroShell - ModelQuest
  • data mining tools - Darwin
  • 数据挖掘交友
  • 数据挖掘博客
  • 数据挖掘工具
  • 数据挖掘资源
  • 数据挖掘技术算法
  • 数据挖掘相关期刊、会议
  • 研究院联盟合作专区
  • 数据挖掘基础与相关技术
  • 数据挖掘厂商与就业
  • 数据挖掘研究者乐园
  • 知名厂商数据挖掘工具资料
  • 国内数据挖掘实验室
  • Foreign Data Mining Lab
  • 热点关注
  • Sybase iAnywhere启动SQLAnywhere 10 Beta
  • Sysbase 数据库,实现分页的查询语句
  • 恢复SQL Anywhere数据库的实用方法 ― .
  • 教你快速掌握Sybase数据库的日常维护 ―
  • 实例分析Sybase数据库Varchar类型的排序 ―
  • 深入剖析Sybase数据库中有关死锁的问题 ―
  • 教你轻松解决 Sybase 数据库的死锁问题 ―
  • 带你轻松接触Sybase备份软件的插件模块
  • 怎样使用图形化管理工具Sybase Central ―
  • 解决REP
  • 论坛最新话题
  • Foundations of Statistical Natural Langu
  • Game Theory meet Data Mining: A Recent P
  • System Building: How does it help or hin
  • 数据挖掘与Clementine培训
  • 新手报到
  • 求 SASEM 客户流失预测分析
  • 数据挖掘工程师/搜索研究院—北京——无线
  • 数据挖掘入门介绍(如何着手数据挖掘)
  • Information Overload Survey Results
  • The INEX 2005 Workshop on Element Retrie
  • 相关资讯
  • 解决REP
  • Sysbase 数据库,实现分页的查询语句
  • Sybase iAnywhere启动SQLAnywhere 10 Beta
  • 数据挖掘实验室资料
  • 数据挖掘博客地址
  • 数据挖掘实验室网站地址
  • Prepare for Medicare audits by using dat
  • 注册成为SAS用户与爱好者俱乐部会员
  • 水南梅
  • 明日烟
  • 新人报道
  • 下载
  • 厦门服务器托管,450元/月—0592-5177319 高
  • 买空间送域名--0592-5177319 高静