Connection对象

connection|对象

    上一章讨论了ADO的基础知识,内容主要涉及Recordset对象以及对数据的处理。在大多数例子中,只是通过指定数据库的表名来获取数据,但正如从对象模型中看到的,ADO还有其他允许访问数据的对象。
       本章将要更详细地介绍这些对象,特别将研究以下内容:
       · Connection对象,以及如何用它来获取数据和运行命令。
       · Command对象,为什么需要该对象及其所具有的功能。
       · 如何运行存储过程,特别是那些需要参数的存储过程。
       · 一些简单的改善ADO性能的优化技巧。
       · 数据整形的概念及如何使用。
       如同介绍Recordset对象那样,我们不打算覆盖所涉及对象的全部方法和属性。在这里只探讨其中最重要的主题,以及那些适用于ASP开发人员的方法与属性。

9.1 Connection对象
       前一章中已经提及,Connection对象是为我们与数据存储提供连接的对象,但这并非Connection对象的全部功能。除了存储连接的细节外(比如数据存储的类型,以及其支持的特性),也可以利用Connection对象运行命令。
       这些命令可能是查询动作,比如更新、插入或删除操作,也可以是返回一个记录集的命令。读者可能会觉得奇怪:既然有了Recordset对象,这又有什么用?这正是ADO的灵活性所在,可以根据当前的情况,以及对当前任务的适用性选择使用任一种对象。
       从Connection对象运行的命令一般是查询动作,但了解能够得到返回的记录集也是非常有用的。

9.1.1 返回一个记录集
       为了从Connection对象返回一个记录集,要使用Execute方法。语法是:
       Connection.Execute CommandText, [RecordsAffected], [Options]
       参数及说明如表9-1所示:
表9-1  Connection对象的Execute方法的参数及说明

       Execute方法可选择地返回一个记录集,在这种情况下只要将返回值赋给记录集变量。例如:
       Set conPubs = Server.CreateObject("ADODB.Connection")
      
       conPubs.Open strConn

       Set rsAuthors = conPubs.Execute("Authors")
       读者可能会奇怪使用Connection对象的Execute方法与使用Recordset对象的Open方法之间到底有什么区别?看上去区别不是很大,使用Recordset对象的Open方法可以改变光标类型和锁定类型。这些选项对于Connection对象的Execute方法是不可用的,因此永远只能得到一个只能前移的、只读的记录集。

9.1.2 操作命令
       如果正在运行操作命令,比如一个SQL UPDATE语句,那么可以使用RecordAffected参数找出有多少条记录受到该命令的影响。例如:
       Dim strSQL As String
       Dim lngRecs As Long

       strSQL = "UPDATE Titles SET Price = Price * 1.10" & "WHERE Type='Business'"

       conPubs.Execute strSQL, lngRecs, adCmdText

       Response.Write lngRecs & " records were updated."
       上述代码将所有类型为Business的书的单价增加了10%。一旦Execute命令执行完毕,受Update命令影响的记录数就返回到变量lngRecs中,这就是RecordsAffected参数。
       注意,已经为命令指定了adCmdText选项,告诉ADO CommandText参数是一个文本命令。一般这不是严格必须的,其目的只是让ADO预先知道执行的命令属于何种类型,这样能够提高性能。记住,这个值可以是一个或多个CommandTypeEnum值。
       无记录集返回
       如果上面的例子不返回记录集,那么在Execute语句中加入另一个选项也是较好的方法:
       conPubs.Execute strSQL, lngRecs, adCmdText + adExecuteNoRecords
       使用adExecuteNoRecords告诉ADO执行的命令不返回任何记录。所以,ADO不必费心去创建一个记录集。如果省略了该选项,那么ADO将会创建一个空的记录集,很明显这浪费了时间,因此加上这个选项会加快语句的执行。

时间: 2025-01-27 15:32:03

Connection对象的相关文章

c3p0连接池中获取的Connection对象的close()方法是真的把连接给关闭了?

问题描述 c3p0连接池中获取的Connection对象的close()方法是真的把连接给关闭了? 自己做写了一个管理数据源的DBManager,构想中从数据源里面获取的Connection使用完之后执行close()方法,然后把Connection对象闲置回连接池中. 但是测试出来的结果好像每次执行close()之后connection就销毁了. 代码如下: DBManager.java package ben.DBUtils; import java.sql.Connection; impo

如何在ado中使用connection 对象

ado|connection|对象 什么是connection对象? 一个connection对象描述了到数据源的物理连接.你可以使用odbc也可以利用ole db来连接数据源.当你打开一个connectiont对象时你就会试图连接数据库.Connection对象的state属性会告诉我们连接是否成功.通过connection对象的execute方法向数据源发送SQL语句或运行存存储过程.如果你向数据源发送的命令要求数据源返回记录集,那么记录集对象会自动的被创建.当你连接上数据库后你可以关闭co

Connection对象的应用

connection|对象 要建立数据库连接,首先应创建connection对象的实例,常用下面的脚本创建一个Connection对象实例: set conn=Server.CreatObject("ADODB.Connection") Dbpath=Server.MapPath(用户.mdb") conn.open"driver={Microsoft Access Driver(*.mdb);dbq="&Dbpath 这时已经建立了数据库的连接,

如何尽快释放掉Connection对象建立的连接?

connection|对象 首先,建立一个Conn的连接对象,然后连接到数据库data.mdb中,取得连接句柄后,把它保存在session("conn")这个Session会话变量中,在打开记录集前,从session("conn")中取出句柄,借助于Session对象,我们可以使不同的ASP页面共用一个连接对象,减少了对服务器内存的开消,而我们也不需要担心当一个用户因为错误操作导致服务器不能释放该被占用的Session连接对象,因为每个用户的Session对象是有一

认识和优化connection对象

connection|对象|优化     在这个数据库连接中.我们使用了session对象,首先,建立一个conn的连接对象,然后连接到数据库data.mdb中,取得连接句柄后,把它保存在session("conn")这个session会话变量中,在打开记录集前,从session("conn")中取出句柄,借助于session对象.我们可以使不同的ASP页面共用一个连接对象,减少了对服务器内存的开销,而我们也不需要担心,当一个客户因为错误操作导致服务器不能析放该被占

如何在ado中使用connection 对象什么是connection对象?

ado|connection|对象 什么是connection对象? 一个connection对象描述了到数据源的物理连接.你可以使用odbc也可以利用ole db来连接数据源.当你打开一个connectiont对象时你就会试图连接数据库.Connection对象的state属性会告诉我们连接是否成功.通过connection对象的execute方法向数据源发送SQL语句或运行存存储过程.如果你向数据源发送的命令要求数据源返回记录集,那么记录集对象会自动的被创建.当你连接上数据库后你可以关闭co

Connection 对象

connection|对象   Connection 对象代表打开的.与数据源的连接. 说明 Connection 对象代表与数据源进行的唯一会话.如果是客户端/服务器数据库系统,该对象可以等价于到服务器的实际网络连接.取决于提供者所支持的功能,Connection 对象的某些集合.方法或属性有可能无效. 使用 Connection 对象的集合.方法.和属性可执行下列操作: 在打开连接前使用 ConnectionString.ConnectionTimeout 和 Mode 属性对连接进行配置.

vb神童教程(续)--vb adodb Connection对象简介

本文欢迎非商业用途的转载,但需要注明出自"编程入门网"及相应的网址链接. Connection对象介绍 Connection对象支持许多属性,可以利用这些属性来操作当前的连接状态或者获取一些基本的Connection对象的信息.有一些属性是只读的,而另一些属性是可读写的. 1.Attributes属性 Attributes属性设置或返回一个整型值,它用来指示对象的一项或多项特性.对于Connection对象,Attributes属性为读/写,并且其值可能为以下任意一个或多个XactAt

ASP入门教程-Connection对象

1.Connection 对象简述 Connection 对象代表了打开的.与数据源的连接,好象在应用程序和数据库中建立了一条数据传输连线,该对象代表与数据源进行的惟一会话.ASP 使用 ADO 对各种数据源进行各种操作,其中,Connection 对象是必不可少的,在这个基础上可以使用 Command 对象及 Recordset 对象来对 Connection 对象所连接的数据库进行插入.删除.更新和查询等操作. 2.Connection 对象的常用属性 Connection 对象的常用属性