2、dim rs as new adodb.recordset

解决方案 »

  1.   

    recordset.Open Source, ActiveConnection, CursorType, LockType, Options参数Source   可选,变体型,计算 Command 对象的变量名、SQL 语句、表名、存储过程调用或持久 Recordset 文件名。ActiveConnection   可选。变体型,计算有效 Connection 对象变量名;或字符串,包含 ConnectionString 参数。CursorType   可选,CursorTypeEnum 值,确定提供者打开 Recordset 时应该使用的游标类型。可为下列常量之一(参阅 CursorType 属性可获得这些设置的定义)。常量 说明 
    AdOpenForwardOnly (默认值)打开仅向前类型游标。 
    AdOpenKeyset 打开键集类型游标。 
    AdOpenDynamic 打开动态类型游标。 
    AdOpenStatic 打开静态类型游标。 
    LockType   可选。确定提供者打开 Recordset 时应该使用的锁定(并发)类型的 LockTypeEnum 值,可为下列常量之一(参见 LockType 属性可获得详细信息)。常量 说明 
    AdLockReadOnly (默认值)只读 — 不能改变数据。 
    AdLockPessimistic 保守式锁定(逐个) — 提供者完成确保成功编辑记录所需的工作,通常通过在编辑时立即锁定数据源的记录。 
    AdLockOptimistic 开放式锁定(逐个) — 提供者使用开放式锁定,只在调用Update 方法时才锁定记录。 
    AdLockBatchOptimistic 开放式批更新—用于批更新模式(与立即更新模式相对)。 
    Options   可选,长整型值,用于指示提供者如何计算 Source 参数(如果它代表的不是 Command 对象),或从以前保存 Recordset 的文件中恢复 Recordset。可为下列常量之一(参见 CommandType 属性可获得该列表中前五个常量的详细说明)。
      

  2.   

    Options   可选,长整型值,用于指示提供者如何计算 Source 参数(如果它代表的不是 Command 对象),或从以前保存 Recordset 的文件中恢复 Recordset。可为下列常量之一(参见 CommandType 属性可获得该列表中前五个常量的详细说明)。常量 说明 
    adCmdText 指示提供者应该将 Source 作为命令的文本定义来计算。 
    adCmdTable 指示 ADO 生成 SQL 查询以便从在 Source 中命名的表中返回所有行。 
    adCmdTableDirect 指示提供者更改从在 Source 中命名的表中返回所有行。 
    adCmdStoredProc 指示提供者应该将 Source 视为存储过程。 
    adCmdUnknown 指示 Source 参数中的命令类型为未知。 
    adCmdFile 指示应从在 Source 中命名的文件中恢复保留(保存的)Recordset。 
    adAsyncExecute 指示应异步执行 Source。 
    adAsyncFetch 指示在提取 Initial Fetch Size 属性中指定的初始数量后,应该异步提取所有剩余的行。如果所需的行尚未提取,主要的线程将被堵塞直到行重新可用。 
    adAsyncFetchNonBlocking 指示主要线程在提取期间从未堵塞。如果所请求的行尚未提取,当前行自动移到文件末尾。 
      

  3.   

    2。 假如您想使用同一个recordset来打开不同记录,那您必须先rs.close
    再打开,但是我不赞成您这样做。还是定义新的Recordset来处理。
    dim rs2 as new adodb.recordset
    rs.state属性来判断是否打开state的值有:常量 说明 
    AdStateClosed 默认,指示对象是关闭的。 
    AdStateOpen 指示对象是打开的。 
    AdStateConnecting 指示 Recordset 对象正在连接。 
    AdStateExecuting 指示 Recordset 对象正在执行命令。 
    AdStateFetching 指示 Recordset 对象的行正在被读取。 
      

  4.   

    1使用global 和 public声明全局变量是否使用起来一样呢?
    2如果默认状态下,打开的是什么参数呢?手里现在没有msdn呀。
    3使用rs.open strSql,conn获得的记录集是否赋值给rs 呢?如果我仅仅做了个声明: dim rs as adodb.recordset? 是否必须dim rs as new adodb.recordset?
    4如果使用set rs=conn.execute(strSql),就只需要做个声明:dim rs as adodb.recordset了?
      

  5.   

    一个rs是不能同时打开两个数据表的,只能在定义一个然后打开,但是不同rs可以打开同一个数据表。
      

  6.   

    附加:
    Recordset 对象的 State 属性可以是组合值。例如,如果正在执行语句,该属性将是 adStateOpen 和 adStateExecuting 的组合值。2的问题上面已经回答
    AdOpenForwardOnly (默认值)打开仅向前类型游标。
    AdLockReadOnly (默认值)只读 — 不能改变数据。 
    3. dim rs as adodb.recordset
       您这样定义的话,在使用之前,您必须
       set rs=new adodb.recordset (new一个实例)
    4. yes