按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
Execute 执行在 mandText 属性中指定的查询、SQL 语句或存储过程
CreateParameter 用指定的名称、类型、方向、大小和值创建新的 Parameter 对象,在参数中传
送的所有值都将写入相应的 Parameter 属性
Cancel 终止执行异步 Execute()方法调用
表 12…5 命令对象的属性及其说明
属性 说明
mandText 设置或返回 mand 对象的文本。通常该对象为 SQL 语句
mandTimeout 指示在终止尝试和产生错误之前执行命令期间需等待的时间
mandType 指定命令类型,可以是文本命令、表格名或者是一个存储过程
ActiveConnection 指示指定的 mand 对象当前所属的 Connection 对象
State 随时使用 State 属性确定指定对象的当前状态
Prepared 指示执行前是否保存命令的编译版本
利用 mand 对象的一些方法和属性,用户可以进行以下一些操作:
o 通过 mandText 属性设置命令串。
o 通过 Parameter 对象和 Parameters 集合定义参数化查询或存储过程的参数。
o 通过 Execute()方法执行一个命令,并返回一个 Recordset 对象。
o 在执行命令前,通过 mandType 属性设置 mand 对象的类型,以达到优化性能
的目的。
o 在执行命令前,通过 Prepared 属性来设置底层提供者是否为当前命令保存一个编译过
的版本。如果现在保存,则以后再执行时,速度会加快。
o 通过 mandTimeout 属性设置执行命令的超时时限。
o 通过 ActiveConnection 属性来指定该命令对象所属的连接(Connection )。
o 通过 Name 属性来指定该命令对象作为其所属连接的一个方法,以便以后可以在相应
Connection 对象上通过 Name 属性指定的名称来执行命令。
o 通过 Source 属性将 mand 对象传递给 Recordset 来得到数据。
o 通过 Properties 集合来访问提供者指定的属性。
12。5。3 记录集对象
记录集对象即 Recordset 对象,它表示一个从数据源选择的一组纪录的集合,其主要方
法和属性如表 12…6 及表 12…7 所示。
表 12…6 记录集对象的方法及其说明
方法 说明
MoveFirst 移动到记录集的第一条记录处
MoveLast 移动到记录集的最后一条记录处
·346 ·
…………………………………………………………Page 358……………………………………………………………
第 12 章 数据库开发
续表
方法 说明
MovePrevious 移动到记录集中当前记录的前一条记录处
MoveNext 移动到记录集中当前记录的后一条记录处
Move 移动到指定的记录
NextRecordset 返回复合命令语句中下一条命令的结果,或返回多个结果的已存储过程结果
Open 直接打开一个记录集,而不是作为执行命令或连接命令产生的记录集
Close 关闭记录集
Delete 删除记录集中的当前记录
Update 将当前对记录集的改动保存到数据源中
UpdateBatch 对更新命令进行批处理 。它对记录集的变化进行缓存,直到调用此方法对变化进行
批量更新
CancelUpdate 取消 Update 更新前所作的改动
CancelBatch 取消数据源中为提交的批量改动
GetRows 获得记录集中的多行数据,并将获得的数据写入数组中
Requery 重新执行以前执行过的命令,重新获得记录集
Support 判断某一特定的记录集对象是否支持特定的属性和方法
Clone 产生一个记录集对象,其中包含记录集对象的所有数据
表 12…7 记录集对象的属性及其说明
属性 说明
AbsolutePage 指定当前记录所在的页
AbsolutePosition 根据其在 Recordset 中的序号位置移动到记录,或确定当前记录的序号位置
ActiveConnection 指定 Recordset 对象当前所属的 Connection 对象
BOF 指示当前记录位置是否位于 Recordset 对象的第一个记录之前
EOF 指示当前记录位置是否位于 Recordset 对象的最后一个记录之后
Bookmark 返回惟一标识 Recordset 对象中当前记录的书签,或者将 Recordset 对象的当前记录
设置为由有效书签所标识的记录
CacheSize 控制提供者在缓存中所保存的记录的数目,并可控制一次恢复到本地内存的记录数
目
CursorType 获得或设置当前光标的类型
EditMode 获得当前的编辑状态
Filter 指定一个在行集中移动时所使用的过滤器
LockType 得到或设置当前的访问状态
MaxRecord 获得或设置一次操作中的 Recordset 对象中所返回的最大行的数目
PageCount 获得记录集中使用的页数
PageSize 获得或指定一页中的行数
RecordCount 获得记录集中包含的记录的数目
Source 获得记录集中记录的来源,可以是一个命令对象、SQL 语句、存储的过程或表名
Status 返回当前行的状态
12。5。4 ADO 的其他对象
除了前面介绍的 3 个重要对象,ADO 还包括域对象 Field 、参数对象 Parameter 、属性对
象 Property 和错误对象 Error 。
1.域对象
Field 对象代表使用普通数据类型的数据列,它的常用方法和属性分别如表 12…8 和表 12…9
·347 ·
…………………………………………………………Page 359……………………………………………………………
Visual C++ 6。0 程序设计从入门到精通
所示。
表 12…8 域对象的方法及其说明
方法 说明
可将二进制或字符数据填写到域对象中,在系统内存有限的情况下,可使用此方
AppendChunk
法对长整型值进行部分操作
检索域对象部分或全部二进制或字符数据,在系统内存有限的情况下,可使用此
GetChunk
方法处理部分长整型值
表 12…9 域对象的属性及其说明
属性 说明
ActualSize 指示字段的值的实际长度
Attributes 域的属性集合,可以用来判断此域是否有固定长度或者是否可以为空
DefinedSize 确定 Field 对象的数据容量
Name 列的名称
NumericScale 在浮点数中用于指出小数点右边多少位
OriginalValue 发生任何更改前已在记录中存在的 Field 的值
Precision 表示数字 Field 对象的精度
Type 列中的值的数据类型
UnderlyingValue 反映了数据源中列的当前值,当在事务的同步时被使用
Value 列的值,用来查询或者设置此列的值
2 .参数对象
Parameter 对象代表基于参数化查询或存储过程的 mand 对象相关联的参数,它的常
用方法和属性分别如表 12…10 和表 12…11 所示。
表 12…10 参数对象的方法及其说明
方法 说明
可将二进制或字符数据填写到域对象中,在系统内存有限的情况下,可使用此方
AppendChunk
法对长整型值进行部分操作
表 12…11 参数对象的属性及其说明
属性 说明
表示参数的特性,这个属性包含几个字节标志的组合,标志用于指示参数是否有
Attributes
符号
指示 Parameter 所标明的是输入参数、输出参数还是二者都是,或该参数是否为
Direction
存储过程的返回值
Name 参数对象的名称
NumericScale 在浮点数中用于指出小数点右边用于表示这个值的位数
Precision 确定表示参数对象数字值的精度
Type 列中的值的数据类型
Size 表示 Parameter 对象的大小
Value 包含分配给参数的实际值
3 .属性对象
Property 对象代表由提供者定义的 ADO 对象的动态特性,它包括内置属性和动态属性两
种类型。
内置属性是在 ADO 中实现并立即可用于任何新对象的属性,它们不会作为 Property 对
·348 ·
…………………………………………………………Page 360……………………………………………………………
第 12 章 数据库开发
象出现在对象的 Properties 集合中。可以更改它们的值,但不能更改它们的特性。
动态属性由现行数据提供者定义,并出现在相应的 ADO 对象的 Properties 集合中。动态
Property 对象有 4 个内置属性:
o Name 属性是标识属性的字符串;
o Type 属性是用于指定属性数据类型的整数;
o Value 属性是包含属性设置的变体型;
o Attributes 属性是指示特定于提