VB.net 中 ADODB的RecordSet 的使用实例说明

首先需要引用:

ado

VB ADODB中的RecordSet.Open打开记录的两个参数adOpenKeyset、adLockBatchOptimistic的详细说明:

这两个参数当时弄明白,过后又忘记了,做了笔记,但为了方便,还是在Blog中也做上这个笔记。

 

缺省值1        adLockReadOnly        RecordSet对象以只读方式启动,无法运行增、删、改等操作

      2        adLockPrssimistic     当数据源正在更新时,系统会锁定其他用户的动作,以保数据一致性。

      3        adLockOptimistic      当数据源正在更新时,系统不会锁定其他用户的动作,其他用户可以对数据进行增、删、改操作。

      4        adLockBatchOptimistic 当数据源正在更新时,其他用户必须将CursorLocation改为adUdeClientBatch才能对数据进行增、删、改的操作。

默认值0       adOpenForwardOnly      使用仅向前游标。除了在记录中只能向前滚动外,与静态游标相同。当只需要在 Recordset 中进行一个传递时,用它可提高性能。

      1       adOpenKeyset           使用键集游标。尽管从您的 Recordset 不能访问其他用户删除的记录,但除无法查看其他用户添加的记录外,它和动态游标相似。其他用户所做的数据更改依然可见。

      2       adOpenDynamic          使用动态游标。其他用户所做的添加、更改或删除均可见,而且允许 Recordset 中的所有移动类型(如果提供者不支持书签,则书签除外)。 

      3       adOpenStatic           使用静态游标。一组记录的静态副本,可用于查找数据或生成报告。其他用户所做的添加、更改或删除不可见。

     -1       adOpenUnspecified      不指定游标类型

-----------------------------------------------------------------------------------------------------

Private conn As New ADODB.Connection
Dim rc As New ADODB.Recordset
Dim Query As New System.Text.StringBuilder

'データ登録
'rc.Open("select * from tablename", conn, 1,3) 等同于一下参数
rc.Open("select * from tablename", conn, ADODB.CursorTypeEnum.adOpenKeyset, ADODB.LockTypeEnum.adLockOptimistic)
With rc
  .AddNew()
  .Fields("f1").Value = "a"
  .Fields("f2").Value = "b"
  .Fields("f3").Value = "c"
  .Update()
End With
rc.Close()

'データ検索
Dim select_rc As New ADODB.Recordset

'Rs.Open sqlstr, Conn, 3, 2 
select_rc.Open("select * from tablename", conn)


'データ数量の判断
If Not Rec.EOF Then
'データない
    With select_rc
      'TODO...
    End With
Else
  'データある

Set FrmIndex.DataGrid1.DataSource = Rs '绑定frmindex.datagrid1控件
  'Rs.Close 关键所在,
           '执行完过程不能直接关了数据库否则不会有数据显示在Datagrid1中的
  'Set Rs = Nothing
End If

'データ更新
Dim sex
        Dim score
        sex = Val(sextext.Text)
        score = Val(scoretext.Text)
        rs(0).Value = xuehaotext.Text
        rs(1).Value = nametext.Text
        rs(2).Value = sex
        rs(3).Value = score
        rs.Update()


'データ削除
rs.Delete()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值