VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - ADO三大对象的属性、方法、事件及常数(二)
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:11292, 日期:2001-11-02
ADO三大对象的属性、方法、事件及常数(二)
Command对象

Command对象的主要目的是执行参数化的存储过程。其形式要么是临时准备(prepared),要么是持久的预编译(precompiled)过的SQL语句。如果想(存储)一个或多个查询以供在同一Connection上多次执行,Command对象也是很有用的。当想创建Recordset时,一种高效的方法是绕过Command对象而采用Recordset.Open方法。

属性

属性名称 数据类型和用途
ActiveConnection 指针类型,指向Command所关联的Connection对象。对于现存的已打开连接,可使用Set cmmName.ActiveConnection=cnnName。另外,也可以不用相关Connection对象名称而使用有效的连接字符串去创建一个新的连接。默认值为Null。
CommandText 可读写String类型。为ActiveConnection指定一条SQL语句、表名、存储过程名或提供者能接受的任意字符串。CommandType属性的值决定了CommandText属性值的格式。默认值为空字符串:""
CommandTimeout 可读写Long类型,指定中止一个Command.Execute调用之前必须等待的时间。这时的值优先于Connection.ComandTimeout中的设定值。默认值为30秒。
CommandType 可读写Long类型,指定数据提供者该如何解释CommandText属性值。CommandType等效于Connection.Execute方法中的可选参数lngOption。详见CommandType所用到的常数。默认值为adCmdUnkown.
Name 可读写String类型,指定Command的名称。
Prepared 可读写Boolean类型,判断数据源是否把CommandText中的SQL语句编译为prepared statement(一种临时性存储过程)。prepared statement仅存活于Command的ActiveConnection生命周期中。许多客户/服务器RDBMS,包括SQL SERVER,都支持prepared statement。如果数据源不支持prepared statement,则把该属性设为True,将导致一个自陷错误。
State 可读写Long类型,指定Commnad状态。见State常数。

注意:最好每次都为CommandType指定的一个合适的常数值,否则会降低系统运行的效率。

方法

方法 用途
Createparameter 在执行该方法之前,必须首先声明一个ADODB.Parameter对象。调用语法为:
cmmName.CreateParameter [strName[,lngType[,lngDirection[,lngSize[,varValue]]]]]
Execute 调用语法同Connection.Execute大致相同。

常数

State常数

常数 含义
adStateClosed Connection(或其他对象)是关闭的(默认值)
adStateConnecting 正在连接数据源的状态
adStateExecuting Connection或Command对象的Execute方法已被调用
adStateFetching 返回行(row)到Recordset对象
adStateOpen Connection(或其他对象)是打开的(活动的)

CommandType所用到的常数

Command类型常数 含义
adCmdUnknown Command类型未定(默认值),由数据提供者去判别Command语法
adCmdFile Command是和对象类型相应的文件名称
adCmdStoredProc Command是存储过程名称
adCmdTable Command是能产生内部SELECT * FROM TableName查询的表名称
adCmdTableDirect Command是能直接从表中获取行内容的表名称
adCmdText Command是一条SQL语句