82连接对象 82.1创建连接对象 在使用连接对象前,必须先调用 Server Create Object方法创建该对象。 调用格式如下: Setconn= Server CreateObject("ADODB Connection") %
8.2 连接对象 8.2.1 创建连接对象 在使用连接对象前 , 必须先调用 Server.CreateObject方法创建该对象。 调用格式如下:
8.2.2连接对象的属性和方法 连接对象包括着丰富的属性和方法 集。在连接数据库之前通常需要对连接 对象的属性进行必要的设置,例如,通 过设置 ConnectionString的属性,就能够 构造包含连接信息的字符串,然后将这 信息发送给会话对象,应用于整个应 用程序,使得开发应用程序更加快捷
8.2 .2 连接对象的属性和方法 连接对象包括着丰富的属性和方法 集。在连接数据库之前通常需要对连接 对象的属性进行必要的设置,例如,通 过设置ConnectionString的属性,就能够 构造包含连接信息的字符串,然后将这 一信息发送给会话对象,应用于整个应 用程序,使得开发应用程序更加快捷
1连接对象的属性 (1) Attributes属性 Attributes属性定义了连接对象的事务处理方 式,控制事务成功或失败后连接对象向数据库写数 据的方式。该属性可以设置为以下两个值: 第一种是: adXactCommitRetaining在成功调用 Committrans方法,事务被写入数据库后,自动启动 个新事务。这种方式称为保留提交。 第二种是: adXactAbortretaining在成功调用 Rollbacktrans方法,事务被取消后,自动启动一个 新事务。这种方法称为保留取消。 如果想同时达到以上两种效果,则可以将该 属性的值设置为 adXact CommitRetaining与
1 连接对象的属性 (1)Attributes属性 Attributes属性定义了连接对象的事务处理方 式,控制事务成功或失败后连接对象向数据库写数 据的方式。该属性可以设置为以下两个值: 第一种是:adXactCommitRetaining 在成功调用 CommitTrans方法,事务被写入数据库后,自动启动 一个新事务。这种方式称为保留提交。 第二种是:adXactAbortRetaining 在成功调用 RollbackTrans方法,事务被取消后,自动启动一个 新事务。这种方法称为保留取消。 如果想同时达到以上两种效果,则可以将该 属性的值设置为adXactCommitRetaining与
adXactAbortRetaining之和。 (2) Cursorlocation属性 Cursorlocation有两个取值,一个是 aduseclient, 是 aduseserver(默认)。前者是使用客户端 的游标,表示将数据库服务器的处理结果保留在服务 器做处理。后者是使用服务器端的游标,表示将数据 库服务器的处理结果返回服务器端以供处理。连接对 与 Recordset对象均有此属性,由连接对象产生的 Recordset对象会自动继承这个属性。当使用值为 dUseserver类型的游标时,游标只能向前移动,为 了能使游标在 Recordset对象内自由移动,连接对象 的 Cursorlocation属性值必须设置为 aduseclient才 另外,要让此属性对 Connection和 Recordset对 象的实例起作用,必须在打开它们之前先进行定义
adXactAbortRetaining之和。 (2)CursorLocation属性 CursorLocation有两个取值,一个是adUseClient, 另一个是adUseServer(默认)。前者是使用客户端 的游标,表示将数据库服务器的处理结果保留在服务 器做处理。后者是使用服务器端的游标,表示将数据 库服务器的处理结果返回服务器端以供处理。连接对 象与Recordset对象均有此属性,由连接对象产生的 Recordset对象会自动继承这个属性。当使用值为 adUseServer类型的游标时,游标只能向前移动,为 了能使游标在Recordset对象内自由移动,连接对象 的CursorLocation属性值必须设置为adUseClient才 行。另外,要让此属性对Connection 和Recordset对 象的实例起作用,必须在打开它们之前先进行定义
(3) Connectionstring属性 Connectionstring用于在打开一个 Connection实例之 设定数据库的连接信息。这些信息包括: Provider 参数、 Data source参数、 User id参数、 Password参 数以及 File name参数等,分述如下: Provider:表示与数据库连接缺省的 provider名称 Data source/DSN:表示ODBC中数据源名称(DSN) 3 User id/UID:表示连接数据库的用户帐号 Password/PwWD:表示连接数据库的用户密码 5 File name:表示指定连接到的数据文件名称。该 属性不能与 Provider同时设置
(3)ConnectionString属性 ConnectionString用于在打开一个Connection实例之 前设定数据库的连接信息。这些信息包括:Provider 参数、Data Source参数、User ID参数、Password参 数以及File Name参数等,分述如下: 1 Provider:表示与数据库连接缺省的provider名称。 2 Data Source/DSN:表示ODBC中数据源名称(DSN)。 3 User ID/UID:表示连接数据库的用户帐号。 4 Password/PWD:表示连接数据库的用户密码。 5 File Name:表示指定连接到的数据文件名称。该 属性不能与Provider同时设置
每一个项目以“参数名=值”的形式存放在该属性中 项目和项目之间使用“;”分隔。 在上面的例子中使用了一条语句 conn. open strConn 其中 strConv就是 Connectionstring,因此上面的语 句也可写成: Conn. Connectionstring=strConn Conn. open (4) Connectiontimeout属性 ConnectiontimeOut用于设定连接对象的0pen方法与 数据库连接的最长等待时间,缺省值为15秒。如果 Connectiontimeout属性设置为0,则表示系统会一直 等待,直到连接成功。在这种情况下,如果不能够连 接上数据库,就会让用户一直等待下去,因此在实际
每一个项目以“参数名=值”的形式存放在该属性中, 项目和项目之间使用“ ;”分隔。 在上面的例子中使用了一条语句conn.open strConn, 其中strConn就是ConnectionString,因此上面的语 句也可写成: Conn.ConnectionString=strConn Conn.open (4)ConnectionTimeOut属性 ConnectionTimeOut用于设定连接对象的Open方法与 数据库连接的最长等待时间,缺省值为15秒。如果 ConnectionTimeOut属性设置为0,则表示系统会一直 等待,直到连接成功。在这种情况下,如果不能够连 接上数据库,就会让用户一直等待下去,因此在实际
应用中应避免这种情况发生 Connectiontimeout属性在连接关闭时是可读写的 而在连接对象启动时其属性是只读的,故 ConnectiontimeOut的属性设置必须在连接前或取消 连接后。 Connectiontimeout属性的语法格式如下: Connection. ConnectiontimeOut=seconds (5) Commandtimeout属性 Commandtimeout属性用于设定连接对象的 Execute方法运行的最长等待时间,缺省值为30秒。 如果希望没有时间限制,则可以将其设置为0 在运行时 Commandtimeout属性是可读写的,而运行中 其属性是只读的,故其属性的设置必须在 Execute
应用中应避免这种情况发生。 ConnectionTimeOut属性在连接关闭时是可读写的, 而在连接对象启动时其属性是只读的 , 故 ConnectionTimeOut的属性设置必须在连接前或取消 连接后。ConnectionTimeOut属性的语法格式如下: Connection.ConnectionTimeOut=seconds (5)CommandTimeOut属性 CommandTimeOut 属 性 用 于 设 定 连 接 对 象 的 Execute方法运行的最长等待时间,缺省值为30秒。 如果希望没有时间限制,则可以将其设置为0。 在运行时CommandTimeOut属性是可读写的,而运行中 其属性是只读的,故其属性的设置必须在Execute
方法运行前。它的语法格式如下 Connection. CommandTime Out=seconds (6) Provider属性 Provider属性可以用来返回或设置连接对象的提 供者名称,这里所谓的提供者名称是指内定数据库管 理程序名称。ADO缺省的 Provider属性值为 MSDASQL ( Microsoft ole db provider for odbc),它负责 理所有以ODBC连接的数据库,其语法格式如下: Connection Provider=ProviderName 可用下面的脚本输出连接对象的数据提供者名称 % Response. write The Provider is conn Provider&"br>%>
方法运行前。它的语法格式如下: Connection.CommandTimeOut=seconds (6)Provider属性 Provider属性可以用来返回或设置连接对象的提 供者名称,这里所谓的提供者名称是指内定数据库管 理程序名称。ADO缺省的Provider属性值为MSDASQL (Microsoft OLE DB Provider for ODBC),它负责 管理所有以ODBC连接的数据库,其语法格式如下: Connection.Provider=ProviderName 可用下面的脚本输出连接对象的数据提供者名称: " %>
(7) Defaul tdatabase属性 DefaultDatabase属性用来设置连接对象的默认 据库名称。如果存在默认数据库,SQL査询字串中 不需要再指定所操作的数据库,AD0对象会自动使用 本属性所设置的数据库。当需要访问其他数据库时, 以将 DefaultDatabase属性设置为该数据库的名称 或直接在SQL查询命令中指定数据库,如: Select*from数据库名.表名 (8) Isolationlevel属性 Isolationlevel属性是用来设置连接对象运行事 务时机的。 Isolationlevel包含属性如下: adXactCursorStability只允许读其它事务已提 交的改变(默认值)
(7)DefaultDatabase属性 DefaultDatabase属性用来设置连接对象的默认 数据库名称。如果存在默认数据库,SQL查询字串中 不需要再指定所操作的数据库,ADO对象会自动使用 本属性所设置的数据库。当需要访问其他数据库时, 可以将DefaultDatabase属性设置为该数据库的名称, 或直接在SQL查询命令中指定数据库,如: Select * from 数据库名.表名 (8)IsolationLevel属性 IsolationLevel属性是用来设置连接对象运行事 务时机的。IsolationLevel包含属性如下: 1. adXactCursorStability 只允许读其它事务已提 交的改变(默认值)
adXactBrowse允许读其它事务未提交的改变 2. adXact Chaos本事务不会覆盖其它位于更高隔离程 度的事务所做的改变 3. adXactIsolated所有事务相互独立 4. adXactReadcommit等同于 adXact Cursorstability 5. adXactreadUncommitted等同于 adXactBrowse adXact Repeatableread禁止读其它事务的改变,可 通过重复查询带回一个新记录集 4. adXactSerializable等同于 adXactisolated 8. adXactUnspecified不能确定提供者的事务隔离 程度
adXactBrowse 允许读其它事务未提交的改变 2.adXactChaos 本事务不会覆盖其它位于更高隔离程 度的事务所做的改变 3.adXactIsolated 所有事务相互独立 4.adXactReadCommit等同于adXactCursorStability 5.adXactReadUncommitted 等同于adXactBrowse 6.adXactRepeatableRead禁止读其它事务的改变,可 通过重复查询带回一个新记录集 7.adXactSerializable 等同于adXactIsolated 8.adXactUnspecified 不能确定提供者的事务隔离 程度