不是因为有些事情难以做到,我们才失去自信,而是我们失去了自信,这些事情才难以做到!

什么是游标类型?

上一篇 / 下一篇  2010-03-04 10:18:25 / 个人分类:开发技术

|8\ gC4OJ,PahpN0游标类型:

C(Z[q0~t PoU#C$M0

SRq~8{g0Const adOpenForwardOnly = 051Testing软件测试网'v$n"U3xr2]
前向游标,为缺省游标,提供最快的运行性能。用它打开recordset,从对至尾顺序取得所有结果。它不支持向后滚动,只允许在结果间单向移动。
#gm:q.L&Q'Z2~I5H\0
o"R2X6wV-iU(G0Const adOpenKeyset = 151Testing软件测试网I(jKo:f1\-B;E*h+]T
静态游标,反映第一次打开游标时表中数据的状态,游标无法查明底层表中的数据行是否更新过、删除过或添加了新的数据。不过与只能前移的洲标不同,静态游标可以在结果间前后滚动。51Testing软件测试网"aD!x,]!zD$}w)X'r

)y$I y:|t5_ m;MQU0Const adOpenDynamic = 251Testing软件测试网+b m g2Z3er0p _%}
键盘驱动的游标,可以查询表中底层数据行的某些变化,但不是全部。它特别是可以准确反映数据是否更新过。但它不能查明其它用户是否曾删除过数据行(删除掉的数据行在recordset中会留下空洞)。键盘驱动的游标支持在结果间前后滚动。
3g|&x%_IOi-w0
Y wA1^V0Const adOpenStatic = 351Testing软件测试网6` ? W1u0M y5Q
动态游标,是最丰富的游标类型。游标打开时可以查询其他用户对表的任何改动,而且支持滚动。

@Kr%ptA051Testing软件测试网| S1n$n2|&S _,Dh7d

什么是锁定类型?51Testing软件测试网BhH`4g^0}

51Testing软件测试网y3fZ Q y

Const adLockReadOnly = 1
1A9\ ?$P7l c0缺省的上锁类型,只读方式上锁允许多个用户同时读取同样的数据,但不能改变数据。51Testing软件测试网&q c]2A3Y4q
51Testing软件测试网E O\L.Zl0D cZ'AW
Const adLockPessimistic = 251Testing软件测试网.Oq,uLm'vvc'~R
以悲观上锁方式打开数据对象。该方式假定在你编辑记录时会有其它用户访问数据。此时一旦你开始编辑记录,其它用户就不能访问该数据。
q&jyB/W051Testing软件测试网;y,y$@H7~
Const adLockOptimistic = 3
!z T pxWY0b*y0以乐观上锁方式打开数据对象。该方式假定在你编辑记录时不会有其它用户访问数据。在完成改变之前,其它用户不能访问该记录。51Testing软件测试网P#T.n9JL V \

YP b5pG[kO8U0Const adLockBatchOptimistic = 4
}TF}c0执行多行批处理更新时使用这种类型

Z#j$n&M)CXJ!r;L051Testing软件测试网pI0{0i;J7x j,R EC

那么rs.cursorlocation = 3又是什么意思呢?就是代表使用客户端光标,也就是rs.CursorLocation = adUseClient。对应的是 rs.CursorLocation = adUseServer 服务端光标。51Testing软件测试网Jxw{k k

d ~WC1q @!P|p(V0看看下面更详细的解释:

:[%`#Wo,N0

'|-C8sK w4k:\ g0CursorLocation 属性
mGp'Ce]051Testing软件测试网8e S3Z$oS7lWAw
    设置或返回游标服务的位置。51Testing软件测试网X[-`n!TW K
51Testing软件测试网&e#t@3F#xc+L
     设置和返回值51Testing软件测试网b},wf Y#U
51Testing软件测试网r{+iG c
     设置或返回可设置为以下某个常量的长整型值。
e'_k5b4xsD#s1R$C0
D S(Z;ua-~R0常量 说明
E})K9tQF#\7Z-?%t0adUseNone 没有使用游标服务。(该常量已过时并且只为了向后兼容才出现)。51Testing软件测试网2}"}C-d|4L2w)c
adUseClient 使用由本地游标库提供的客户端游标。本地游标服务通常允许使用的许多功能可能是驱动程序提供的游标无法使用的,因此使用该设置对于那些将要启用的功能是有 好处的。AdUseClient 具有向后兼容性,也支持同义的 adUseClientBatch。
:kCBOj![0adUseServer 默认值。使用数据提供者的或驱动程序提供的游标。这些游标有时非常灵活,对于其他用户对数据源所作的更改具有额外的敏感性。但是,Microsoft Client Cursor Provider(如已断开关联的记录集)的某些功能无法由服务器端游标模拟,通过该设置将无法使用这些功能。

] rSs7h:Ix~*k051Testing软件测试网R*aE#w$qnc


]6k&\H#?l6m#Z|0说明

*Nr|^ o0
H9U[}#cY3S2B{0该属性允许在可用于提供者的各种游标库中进行选择。通常,可以选择使用客户端游标库或位于服务器上的某个游标库。51Testing软件测试网5B S;F6I(oEi;k)q4l
51Testing软件测试网;ICgW3x4t
该属性设置仅对属性已经设置后才建立的连接有影响。更改 CursorLocation 属性不会影响现有的连接。
$D4a dY*otzvV8T051Testing软件测试网,sTiIa
对于 Connection 或关闭的 Recordset 该属性为读/写,而对打开的 Recordset 该属性为只读。51Testing软件测试网}0d {/H2|CP0_

4\cJR4?+T0由 Execute 方法返回的游标继承该设置。Recordset 将自动从与之关联的连接中继承该设置。51Testing软件测试网8`$I/I1Fa|8o%Nz

L&m3}"A7kBI&xt0远程数据服务用法 当用于客户端 (ADOR) Recordset 或 Connection 对象时,只能将 CursorLocation 属性设置为 adUseClient。

Np6v1]9\D+V0

TAG:

 

评分:0

我来说两句

Open Toolbar