程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> 細化解析:怎樣理解游標的可用性和屬性

細化解析:怎樣理解游標的可用性和屬性

編輯:SyBase綜合文章

游標的可用性

並非所有的接口都為所有的游標類型提供支持。

ODBC 和 OLE DB (ADO) 支持所有的游標類型。

嵌入式 SQL 支持所有的游標類型。

ADO.Net 只提供只進、只讀游標。

對於 JDBC

•jConnect 4.x 只提供敏感性未定型游標。

•jConnect 5.x 支持所有類型的游標,但是可滾動游標會導致性能嚴重下降。

•iAnywhere JDBC 驅動程序支持所有類型的游標。

Sybase Open ClIEnt 只支持敏感性未定型游標。此外,在使用可更新的非唯一游標時,會產生嚴重的性能下降。

游標屬性

您可以顯式或者隱式從編程接口請求游標類型。不同的接口庫提供不同的游標類型選擇。例如, JDBC 和 ODBC 指定了不同的游標類型。

每個游標類型都由許多特性來定義:

唯一性 聲明游標是唯一的將強制查詢返回唯一地標識每一行所需要的所有列。通常,這意味著返回主鍵中的所有列。所需要的但未指定的任何列都要添加到結果集中。缺省游標類型是非唯一的。

可更新性 聲明為只讀的游標不能在定位更新或刪除操作中使用。

缺省游標類型是可更新的。

可滾動性 您可以這樣聲明游標:當您在結果集中移動時,它表現出不同的行為。某些游標可以只讀取當前行或後面的行。其它一些游標可以在結果集中來回移動。

敏感性

通過游標也許可以看到對數據庫的更改,也許看不到。

這些特性可能會對性能以及數據庫服務器內存的使用產生明顯的副作用。

Adaptive Server Anywhere 可產生具有這些特性中的各種混合特性的游標。當您請求給定類型的游標時, Adaptive Server Anywhere 將盡可能匹配那些特性。

某些情況下,並非所有特性都可以提供。例如, Adaptive Server Anywhere 中的不敏感游標必須是只讀的。如果您的應用程序請求可更新的不敏感游標,提供給它的將是別的類型的游標 (對值敏感)。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved