Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 编程 » 使用 SQL Anywhere 编程简介 » 在应用程序中使用 SQL » SQL Anywhere 游标

 

不敏感游标

这些游标具有不敏感的成员资格、顺序和值。游标打开之后进行的任何更改都是不可见的。

不敏感游标只用于只读游标类型。

标准

不敏感游标对应于不敏感游标的 ISO/ANSI 标准定义,并对应于 ODBC 静态游标。

编程接口
接口 游标类型 注释
ODBC、ADO/OLE DB 静态 如果请求可更新的静态游标,则改为使用对值敏感的游标。
嵌入式 SQL INSENSITIVE
JDBC INSENSITIVE 不敏感语义仅受 iAnywhere JDBC 驱动程序支持。
Open Client 不支持
说明

不敏感游标会始终按任何可能存在的 ORDER BY 子句指定的顺序返回与查询的选择标准匹配的行。

当游标打开之后,不敏感游标的结果集将完全作为工作表实例化。这样会带来以下后果:

  • 如果结果集非常大,那么管理结果集需要的磁盘空间和内存可能也非常大。

  • 在整个结果集被汇编为工作表之前,没有行返回到应用程序。对于复杂的查询,这可能会导致经过一段延迟后第一行才返回到应用程序。

  • 后面的行可以直接从工作表读取,因此可以快速地返回。客户端库可以一次预取多行,从而进一步改善性能。

  • 不敏感游标不会受 ROLLBACK 或 ROLLBACK TO SAVEPOINT 的影响。