我看过很多asp教程,但是对于command的介绍很简略。能否说明一下command对象到底做什么用?
ASP编程技术-COMMAND对象的属性
--------------------------------------------------------------------------------
我找这篇文章已经很久了,一直找不到,后来找了几本书,一点一点敲上去的。 大家也一快来吧。。。。。
ActiveConnection 设置或返回Command对象的连接信息,该属性可以是一个Connection对象或连接字符串。
CommandText 设置或返回对数据源的命令串,这个串可以是SQL语句、表、储存过程或数据提供者支持的任 何特殊有效的命令文本。
Prepared...全部
ASP编程技术-COMMAND对象的属性
--------------------------------------------------------------------------------
我找这篇文章已经很久了,一直找不到,后来找了几本书,一点一点敲上去的。
大家也一快来吧。。。。。
ActiveConnection 设置或返回Command对象的连接信息,该属性可以是一个Connection对象或连接字符串。
CommandText 设置或返回对数据源的命令串,这个串可以是SQL语句、表、储存过程或数据提供者支持的任 何特殊有效的命令文本。
Prepared 提出在调用Command对象的Execute方法时,是否将查询的编译结果储存下来。如果将该属性设 为True,则会把查询结果编译并保存下来,这样针影响第一次的查询速度,但一但数据提供者编译了Command对 象,数据提供者在以后的查询中将使用编译后的版本,从而极大的提高了速度
CommandTimeout 设置执行一个Command对象时的等待时间,默认值是30秒。
如果在这个时间内Command对象没 有执行完,则终止命令并产生一个错误
CommandType
指向Command对象的类型,取值如下:
1 或 是一个SQL语句;
2 或 a 是一个表名,ADO会产生一个对该表的查询,以返回该表的全部行和列。
4 或 adCmdS 是一个储存过程名
8 或 adCmdUnknown:默认值。 CommandText内容是未知的
128 或 adExecute 是一个不返回记录集的命令或存储过程。
如果可以取记录,这些记 录将被丢弃。该值总是和adCmdText或adCmdStoredProc一起使用;
256 或 是已存在的记录集的文件名;
512 或 adCmdTa 是一个表,在查询中该表的全部行和列将被返回
--------------------------------------------------------------------
Command 对象的方法
Cancel 取消一个未确定的异步执行的Execute方法。
如果执行Execute方法时未指定adRunAsync参数,则 Cancel方法会返回一个运行时错误
CreateParameter 创建一个新的Parameter对象。Parameter对象表示传递给SQL语句或储存过程的一个参数
Execute 执行一个由CommandText属性指定的查询、SQL语句或储存过程。
该方法调用所返回的记录集是仅向 前和只读的游标。如果想得到其它类型的游标或写数据,则必需一个Recordset对象并用Open方法打开记录集。
-------------------------------------------------------------------
Type 的属性
adBigInt 20 八位符号整数
adBinary 128 二进制值
adBoolean 11 布尔值
adBSTR 8 以空值结束的Unicode字符串
adChar 129 字符串值
adCurrency 6 货币值,8字节长
adDate 7 日期值
adDBDate 133 日期值,格式是:yyyymmdd
adBDTime 134 时间值,格式是:hhmmss
adDBTimeStamp 135 日期时间戳,格式是:yyyymmddhhmmss
adDecimal 14 有固定精度的数值
adDouble 5 双精度浮点值
adEmpty 0 无指定值
adError 10 32位错误码
adGUID 72 全局唯一指示符
adIDispatch 9 指向OLE对象的接口指针
adInteger 3 四位符号整数
adIUnknown 13 指向OLE对象的IUnknown接口指针
adLongVarBinary 205 长整型二进制(仅用于Parameter对象)
adLongVarChar 201 长字符串值(仅用于Parameter对象)
adLongVarWChar 203 以空值结束的长字符串值(仅用于Parameter对象)
adNumeric 131 有固定精度的数值
adSingle 4 单数度浮点值
adSmallInt 2 两位符号整数
adTinyInt 16 一位符号整数
adUnsignedInt 21 八位无符号整数
adUnsignedSmallInt 19 四位无符号整数
adUserDefined 132 用户定义的变量
adVarBinary 204 二进制值(仅用于Parameter对象)
adVarChar 200 字符串值(仅用于Parameter对象)
----------------------------------------------------------
Direction 设置参数的数据流向
adParamInput 1 输入参数,即传送数据给一个存储过程
adParamOuput 2 输出参数,即从得到Command对象执行后的输入值
adParamInputOutput 3 输入和输出参数,即传送并接收数据
adParamReturnvalue 4 返回值,用来读取从存储过程返回的状态值
---------------------------------------------------------------------
Command对象的基本用法
Set cm = Server。
CreateObject("ADOBD。Command")
Set cm。ActiveConnection = conn
'将Command对象与Connection对象关联后,接着用CommandText属性来定义一个命令串,这个串将由Execute方 法执行。
cm。CommandText = "select * from books"
cm。CommandType = adCmdText
或者将命令串定义为一个表名
mandText = "books"
cm。
CommandType = adCmdTable
设置CommandText属性后,就可以执行Command对象了。执行Command对象,实际上就是执行Command对象所指定 的查询。
```````````````````````````````````````````````````
```````````````````````````````````````````````````
使用参数的情况:
要执行一个参数查询,必须先调用CreateParameter方法创建一个Parameter对象,然后调用Append方法将其添 加到Parameters集合中,再将值赋予给参数。
例如:
'创建一个Parameter对象并将其添加到Parameters集合中
cm。Parameters。Append cm。CreateParameter("OrderId",adVarChar,,6)
cm("OrderID") = "D00001" '未选择时,将第一个订单号赋予参数
CreateParameter方法的语法是:
set para = comm。
CreateParameter(Name,Type,Direction,Size,value)
其中,para是CreateParameter方法返回的Parameter对象。comm是已创建的Command对象。
Name定义了参数的名 称。Type定义了参数的类型
Parameters 集合和 Parameter 对象
Command对象包含一个Parameters集合。Parameters集合包含参数化的Command对象的所有参数,每个参数信息 由Parameter对象表示。
Parameters集合的属性和方法
Count 属性 返回Command对象的参数个数
Append方法 增加一个Parameter对象到Parmeters集合中。
Delete 方法 从Parameters集合中删除一个Parameter对象。
------------------------------------------------------------------------
------------------------------------------------------------------------
调用存储过程
Set cm = Server。
CreateObject("ADOBD。Command")
SEt cm。ActiveConnection = conn
'将CommandText属性设为存储过程名
cm。CommandText = "sp_proc"
'将CommandType属性设为储存过程
cm。
CommandType = adCmdStoredProc
'创建第一个参数
Set param = cm。CreateParameter("@test",adVarChar,adParamInput,10)
'添加到Parameters集合中
cm。
Parameters。Append param
'创建第二个参数
Set param = cm。CreateParameter("@dates",adDate,adParamInput)
'添加到Parameters集合中
cm。
Parameters。Append param
设置输入值
cm("@test") = "小说"
cm("@dates") = "1998-3-1"
rs。open cm,,1,1
。
收起