rst.Open "select * from tjs_book", cnn, 1, 1和 rst.Open "select * from tjs_book", cnn, 3, 3
1和3到底有什么区别呢?什么时候应该用1什么时候应该用3啊?

解决方案 »

  1.   

    前面是游标,后面的是锁类型!
    1,1代表adOpenKeyset,adLockReadOnly
    3,3代表adOpenStatic ,adLockOptimistic
      

  2.   

    CursorLocation 属性 (ADO)
             设置或返回游标引擎的位置。设置和返回值设置或返回可设置为以下某个常量的长整型值。常量 说明 
    adUseNone 没有使用游标服务。(该常量已过时并且只为了向后兼容才出现)。 
    adUseClient 使用由本地游标库提供的客户端游标。本地游标引擎通常允许使用的许多功能可能是驱动程序提供的游标无法使用的,因此使用该设置对于那些将要启用的功能是有好处的。adUseClientBatch 与 adUseClient 同义,也支持向后兼容性。 
    adUseServer 默认值。使用数据提供者或驱动程序提供的游标。这些游标有时非常灵活,对于其他用户对数据源所作的更改具有额外的敏感性。但是,Microsoft Client Cursor Provider(如已断开关联的记录集)的某些功能无法由服务器端游标模拟,通过该设置将无法使用这些功能。 
    说明该属性允许在可用于提供者的各种游标库中进行选择。通常,可以选择使用客户端游标库或位于服务器上的某个游标库。该属性设置仅对属性已经设置后才建立的连接有影响。更改 CursorLocation 属性不会影响现有的连接。对于 Connection 或关闭的 Recordset 该属性为读/写,而对打开的 Recordset 该属性为只读。Connection.Execute 游标将继承该设置。Recordset 将自动从与之关联的连接中继承该设置。Remote Data Service 用法   当用于客户端 (ADOR) Recordset 或 Connection 对象时,只能将 CursorLocation 属性设置为 adUseClient
      

  3.   

    CursorType 属性 (ADO)
             指示在 Recordset 对象中使用的游标类型。设置和返回值设置或返回以下某个 CursorTypeEnum 值。常量 说明 
    adOpenForwardOnly 仅向前游标,默认值。与静态游标相同,但只能在记录中向前滚动。当需要在记录集中单向移动时,可用于提高性能。 
    adOpenKeyset 键集游标。尽管从您的记录集不能访问其他用户删除的记录,但除无法查看其他用户添加的记录外,键集游标与动态游标相似。仍然可以看见其他用户更改的数据。 
    adOpenDynamic 动态游标。可以看见其他用户所作的添加、更改和删除。允许在记录集中进行所有类型的移动,但不包括提供者不支持的书签操作。 
    adOpenStatic 静态游标。可以用来查找数据或生成报告的记录集合的静态副本。另外,对其他用户所作的添加、更改或删除不可见。 
    说明使用 CursorType 属性可指定打开 Recordset 对象时应该使用的游标类型。Recordset 关闭时 CursorType 属性为读/写,而 Recordset 打开时该属性为只读。如果将 CursorLocation 属性设置为 adUseClient,则只支持 adUseStatic 的设置。如果设置了不支持的值,不会导致错误,并将使用最接近支持的 CursorType。如果提供者不支持所请求的游标类型,提供者可能会返回其他游标类型。打开 Recordset 对象时,将更改 CursorType 属性使之与实际使用的游标匹配。要验证返回游标的指定功能,请使用 Supports 方法。关闭 Recordset 后,CursorType 属性将恢复为最初的设置。下表说明每个游标类型所需的提供者功能(由 Supports 方法常量标识)。 对于该 CursorType 的某Recordset  对于所有这些常量,Supports 方法必须返回 True 
    adOpenForwardOnly 无 
    adOpenKeyset AdBook、adHoldRecords、adMovePrevious、adResync 
    adOpenDynamic adMovePrevious 
    adOpenStatic adBook、adHoldRecords、adMovePrevious、adResync 
    注意   尽管对于动态游标和仅向前游标 Supports(adUpdateBatch) 可能是真,但对于批处理更新应使用键集游标或静态游标。请将 LockType 属性设置为 adLockBatchOptimistic,然后将 CursorLocation 属性设置为 adUseClient 以启用批更新需要的引擎 Microsoft Client Cursor Engine。Remote Data Service 的用法   当用于客户端 (ADOR) Recordset 对象时,只能将 CursorType 属性设置为 adOpenStatic。
      

  4.   

    我只会这个Private Sub cmdOK_Click() '确定
    If Text1.Text = "杨姝" And Text2.Text = "302119" Then '管理员身份进入
    Form2.Show
    End If
    If Text1.Text = "" And Text2.Text = "" Then '成员身份进入
    Form3.Show '不可以进行修改的表
    End If
    End Sub
    Private Sub cmdCancel_Click() '取消
    OK = False
    Me.Hide
    End Sub