java ado recordset_ADO之Recordset对象用法

本文摘自:https://blog.csdn.net/hfchenle/article/details/51832973

在ADO程序中,记录集(Recordset)对象代表一个表的记录集合或者是一个SQL命令或存储过程执行结果。简单地说:记录集实际上缓存了从数据库获得的记录,应用程序可以从记录集中获得每条记录的字段。

Recordset对象的常用属性和方法:

RecordCount属性:返回Recordset对象中记录的当前数目

BOF,EOF属性:BOF指示当前记录位置的第一记录的前一个,EOF指示当前记录的最后一个记录的后一个。如果打开没有记录的Recordset对象,则BOF,EOF都为true,如果打开的记录集中包含记录,则BOF,EOF都为false

AbsolutePosition属性:指定Recordset对象当前记录的序号位置

ActiveConnection属性:该属性指定Recordset当前所属的Connection对象。

Open方法定义:

1 HRESULT Open (const _variant_t &Source,2 const _variant_t &ActiveConnection,3 enumCursorTypeEnum CursorType,4 enumLockTypeEnum LockType,5 long Options)

Source参数:为记录源,它可以是下列内容之一:Command对象变量,SQL语句,存储过程,表名或完整的路径名。

ActiveConnection参数:对应于ActiveConnection属性,指定在哪个连接中打开该记录集

CursorType参数:指定打开Recordset时使用的游标

0(adOpenForwardOnly): 默认,前向游标。只能在Recordset的记录中向前移动,但速度最快。

1(adOpenKeyset):键集游标,可以在Recordset中任意移动,其他用户所做的记录修改可见,但其他用户添加的记录不可见,删除的记录字段值不能被使用。

2(adOpenDynamic):动态游标,可以在Recordset中任意移动,其他用户增、删、改的记录都可见,但速度最慢。

3(adOpenStatic):静态游标,可以在Recordset中任意移动,其他用户增、删、改的记录都不可见。

LockType参数:指定打开记录集时应该使用的锁定类型,它的取值为

0(adLockReadOnly):recordset的记录为只读

1(adLockPessimistic):只要保持Recordset为打开,别人就无法编辑该记录集中的记录.

2(adLockOptimistic):当update recordset中的记录时,将记录加锁

3(adLockBatchOptimistic):以批模式时更新记录时加锁

Options参数:该参数类型为长整型值,指定source传递命令的类型

1(adCmdText):SQL语句

2(adCmdTable):数据表的名字

4(adCmdStoredProc):存储过程

8(adCmdUnknown):未知类型

MoveFirst,MoveLast,MoveNext,MovePrevious方法:这些方法可以对记录集的游标进行移动操作

GetCollect方法:用于取得字段的值,参数Index可以是字符串表明字段名,也可以是整型数,表示字段的序号。

_variant_t  GetCollect(const _variant_t &Index);

PutColloct方法:用于向记录字段中写入值,pvar参数表示要写入的变量值

void PutCollect (const _variant_t &Index,const _variant_t &pvar);

AddNew()方法:使用该方法创建和初始化新记录,该方法可以使用参数,在参数中指定要添加的新纪录,也可以不使用参数,而在后面使用PutCollect方法修改新记录,使用Update函数保存新纪录

Update()方法:该方法保存从调用AddNew方法以来或更改现有记录中的任何字段值以来所做的所有更改。

使用记录集的具体方法:

定义_RecordsetPtr型变量,然后通过它调用Recordset对象的Open方法,即可打开一个数据集,然后可以使用GetCollet方法获取记录的字段值,使用Move系列函数实现记录集的遍历,最后关闭记录集。

使用集合Fields获取字段值

_variant_t var=pRecordset->Fields->GetItem(long(0))->GetValue();

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页

打赏作者

王玮滢

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值