欢迎来到天天文库
浏览记录
ID:40239723
大小:590.50 KB
页数:78页
时间:2019-07-28
《Web数据库技术 第8.4节 命令对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、8.4命令对象在8.12节中曾经提到命令对象负责对数据库提供请求,也就是说它定义了将对数据源执行的指定命令,这些命令可以是SQL语句、表或存储过程。命令对象提供了一种简单有效的方法来处理查询或存储过程,通过该对象可以方便地查询数据库并返回记录集,并对该记录集执行有关操作。8.4.1命令对象的属性和方法命令对象既可以利用已经创建的连接对象来创建,也可以不用先创建连接对象就直接使用命令对象,只需设置命令对象的ActiveConnection属性为一个连接字串即可,这时ADO将自动创建一个隐含的连接对象,但不会分配一个对象变量给它。因此如果多个命令对象要使用相同的连接,则应明确地创建并打
2、开一个连接对象,这样就可将连接对象赋给该变量。1.创建命令对象使用命令对象之前,必须先用Server.Createobject方法创建该对象。可以使用下列脚本创建命令对象:<%'创建命令对象Setcomm=Server.Createobject("ADODB.Command")%>2.命令对象的属性通常在使用命令对象之前需要对命令对象的属性进行必要的设置,以便对该对象进行相应的操作。下面分别介绍命令对象的属性。(1)ActiveConnection属性在执行命令对象的命令之前,必须先设置ActiveConnection属性,否则将发生错误。ActiveConnection属性设置或
3、返回命令对象所使用的连接对象。可以将ActiveConnection属性设置为一个已经存在并打开的连接对象,也可以为其定义一个连接使用的有效字串。(2)CommandText属性将命令对象与连接对象关联后,可以使用CommandText属性设置数据库查询字串,并在执行命令对象的Execute方法时将该字串提交给数据提供者处理。通常该属性为SQL语句,但也可以是一个表名或是一个StoredProcedure名。设置了CommandText属性后,就可调用命令对象的Execute方法来执行由CommandText属性值所指定的操作。(3)CommandType属性CommandType
4、属性定义如何使用CommandText,分别为adCmdText,adCmdTable,adCmdStoredProc及adCmdUnknown。与前面在讲连接对象的Execute方法中的相应的选项的含义相同。设置该属性可优化CommandText属性的计算。如果没有设置该属性值,则ADO因不知CommandText属性值是SQL语句、表还是存储过程,需要花时间去识别而影响系统的执行速度。(4)CommandTimeOut属性该属性定义命令对象终止并产生错误之前需等待的时间,默认为30秒。(5)Prepared属性Prepared属性决定数据提供者在首次执行命令对象前是否保存命令的
5、编译版本,该属性是一个布尔型值。当Prepared属性设置为True时,将会把首次执行CommandText属性中指定查询的结果编译并保存下来,在后继命令的执行中,数据提供者将直接使用已编译好的命令版本,从而提高执行性能。如果该属性设置为False,则将直接执行命令对象而不创建编译版本。在实际使用中有些数据提供者可能不支持命令的预编译,此时当该属性设置为True时,ADO将返回错误。3.命令对象的方法(1)CreateParameter方法:用来产生一个新的Parameter对象,并在执行之前加到命令对象的Parameters集合中。返回值为创建的Parameter对象。Param
6、eter对象表示传递给SQL语句或存储过程的一个或多个参数。CreateParameter方法的语法格式如下:SetParam=comm.CreateParameter(name,type,direction,size,value)其中的各个参数均为可选项,具体说明如下:Name:是一个字符串,指定Parameter对象的名称,该名称为参数的引用名,在后面引用参数的值时会有用。Type:是一个长整型值,指定Parameter对象的数据类型。例如整数为adInteger;Direction:是一个长整型值,指定参数是输入还是输出,相应的值为:adParamInput(指示输入参数)、
7、adParamOutput(指示为输出参数)、adParamReturnValue(指示为返回值)、adParamUnknown(指示参数类型无法确定)、adParamInputOutput(指示为输入/输出参数);Size:是一个长整型值,指定参数的最大长度或最大的值。Value:是一个变体型值,指定参数的值。可以将各个选项分开来写,例如下面的两种写法是等价的。Setparam=comm.CreateParameter(name,type,direction,siz
此文档下载收益归作者所有