找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 320|回复: 0

[原创]:数据库连接(2)

[复制链接]
发表于 2004-9-11 18:07:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
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语句
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-29 07:19 , Processed in 0.339878 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表