详解rs.open sql,conn,1,1后的数字参数的含义

RS.OPEN SQL,CONN,A,B
参数A为设定游标的类型,其取值为:
0      仅向前游标,只能向前浏览记录,不支持分页、Recordset、BookMark
1      键集游标,其他用户对记录说做的修改将反映到记录集中,但其他用户增加或删除记录不会反映到记录集中。支持分页、Recordset、BookMark
2      动态游标功能最强,但耗资源也最多。用户对记录说做的修改,增加或删除记录都将反映到记录集中。支持全功能浏览。
3      静态游标,只是数据的一个快照,用户对记录说做的修改,增加或删除记录都不会反映到记录集中。支持向前或向后移动


参数B为记录集的锁定类型,其取值为:
1      锁定类型,默认的,只读,不能作任何修改
2      当编辑时立即锁定记录,最安全的方式
3      只有在调用Update方法时才锁定记录集,而在此前的其他操作仍可对当前记录进行更改、插入和删除等
4      当编辑时记录不会被锁定,而更改、插入和删除是在批处理方式下完成的

打开数据记录集方法其实不止一种,但是我们用的最多的就是
rs.open  sql,1,1的方法,可是后面的数字参数很多人不解其意,下面我们来介绍一下。
其实open方法后面有多个参数 
CursorType        LockType        CommandType
比如  rs.open  sql,1,1
也可以写成
rs.cursorType  =  1
rs.LockType  =  1
rs.open  sql
其中CursorType代表从一个表或者一个SQL查询结果返回的记录。
这个参数有四个值分别是:
adOpenForwardOnly  表示只允许在记录集内的记录间往前移动。这个是缺省值。
adOpenKeyset  反映由其它用户所做的对记录的改变或者删除动作,但并不反映由其它用户做作的添加新记录的动作。
adOpenDynamic  反映由其它用户所做的对记录的改变或者删除动作,包括添加的新记录
adOpenStatic  不反映其它用户对记录所做的修改,添加,删除动作。
这四个值VBSCRIPT预定义位
adOpenForwardOnly  =  0
adOpenKeyset  =  1
adOpenDynamic  =  2
adOpenStatic  =  3

lockType  表示当打开记录集时,数据提供者用于锁定数据库的类型:
adLockReadOnly  数据不能改变,这是缺省值!
adLockPessimistic  数据提供者在开始编辑数据的时候锁定记录
adLockOptimistic    仅当调用update方法时,数据提供者锁定记录
adLockBatchOptimistic  用于批处理修改
他们的常量值定义分别是:
adLockReadOnly  =  1
adLockPessimistic  =  2
adLockOptimistic  =  3
adLockBatchOptimistic  =  4 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于你的问题,我可以给你一些解释和说明。 首先,要在VBA中连接MYSQL数据库,需要使用ADODB工具包。这个工具包可以提供与各种数据库进行连接和数据操作的功能,包括MySQL数据库。 具体的连接过程包括以下几个步骤: 1. 创建一个ADODB.Connection对象,作为连接数据库的通道。 2. 设置连接字符串,包括数据库类型、服务器地址、用户名、密码等信息。 3. 使用Open方法打开连接通道。 示例代码如下: ``` Dim conn As New ADODB.Connection conn.ConnectionString = "Driver={MySQL ODBC 8.0 Unicode Driver};Server=localhost;Database=mydatabase;User=myusername;Password=mypassword;Option=3;" conn.Open ``` 这里,连接字符串中的Driver参数就是连接驱动程序的名称。其中的MySQL ODBC 8.0 Unicode Driver表示连接MYSQL数据库的驱动程序。其他参数如Server、Database、User、Password就是连接数据库所需的服务器地址、数据库名称、用户名和密码等。 当连接成功后,就可以使用ADODB.Command对象从数据库中查询数据了。这个过程也包含几个步骤: 1. 创建一个ADODB.Command对象,作为执行SQL语句的通道。 2. 设置SQL语句。 3. 执行SQL语句,得到ADODB.Recordset对象,即查询结果集。 示例代码如下: ``` Dim cmd As New ADODB.Command Dim rs As ADODB.Recordset cmd.ActiveConnection = conn cmd.CommandText = "SELECT * FROM mytable" Set rs = cmd.Execute ``` 这里,我们先创建了一个ADODB.Command对象。这个对象需要关联到之前创建的ADODB.Connection对象上,并设置查询SQL语句。 最后,执行SQL语句,并将查询结果保存在ADODB.Recordset对象中。这个RS对象就是我们所说的“数据集”。 那么,rs.Open Sql, cnn后面的数字参数指的是游标类型,包括以下几种: - adOpenForwardOnly:只能进行向前遍历,不能后退。 - adOpenStatic:静态游标,数据不会发生改变。 - adOpenDynamic:动态游标,数据可能会发生改变。 这些游标类型根据不同的需求进行选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值