Welcome

首页 / 网页编程 / ASP / ASP入门教程-Connection对象

ASP入门教程-Connection对象2008-02-17含笑1、Connection 对象简述

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

2、Connection 对象的常用属性

Connection 对象的常用属性 <表>

属 性描述
CommandTimeout这义了使用 Execute 方法运行一条 SQL 命令的最长时限,能够中断并产生错误。默认值为30秒,设定为0表示没有限制。
ConnectionString设定连接数据源的信息,包括 FlieName、Password、Userld、DataSource、Provider 等参数。
ConnectionTimeout设置在终止尝试和产生错误前建立数据库连接期间所等待的时间,该属性设置或返回指示等待连接打开的时间的长整型值(单位为秒),默认值为15。如果将该属性设置为0,ADO 将无限等待直到连接打开。
DefaultDatabase定义连接默认数据库。
Mode建立连接之前,设定连接的读写方式,决定是否可更改目前数据。0 一 不设定(默认)、1 一 只读、2 一 只写、3 一 读写。
Provider设置连接的数据提供者(数据库管理程序),默认值是 MSDASQL (Microsot-ODBC For OLEDB)
State读取当前链接对象的状态,取0表示关闭,1表示打开。
3、Connection 对象的方法

Connection 对象的方法<表二>

方 法描述 / 格式 / 注解
Open建立一个与数据源的连接对象。
Connobject.Cpen connectionstring,UserID,Password
1、Connectionstring 为可选参数,它是一个字符串变量,包含连接的信息。2、UserID 为可选参数,它是一个字符串变量,包含建立连接时访问数据库使用的用户名称。

3、Password 为可选参数,它是一个字符串变量 ,包含建立连接时访问数据库使用的密码。

Close关闭与数据源的连接,并且释放与连接有关的系统资源。
Connobject.close
使用 Close 方法关闭 Connection 对象,并没有从内存删除该对象。因此一个关闭的 Connection 对象还可以用 Open 方法打开而不必再次创建一个 Connection 对象。此外,在使用 Close 方法关闭连接时,也将关闭与此连接的所有活动的 Recordset 对象。但是,与此连接相关的 Command 对象将不受影响,只不过 Command 对象不再参与这个连接。可以使用:Set Connobject=nothing 命令释放 Connection 对象所占用的所有资源。

Execute执行 SQL 命令或存储过程,以实现与数据库的通信。
有返回记录的格式:Set Rs=Connobject.Execute(CommandText,RecordsAffected,Options)无返回记录的格式: Connobject.Execute CommandText,RecordsAffected,Options

CommandType 是一个字符串,它包含一个表名,或某个将被执行的 SQL 语句; RecordsetAffected 为可选参数,返回此次操作所影响的记录数。

Options 为可选参数,用来指定 CommandText 参数的性质,即用来指定 ADO 如何解释 CommandText 参数的参数值,如下表:

Options值意义描述
1表示被执行的字符串包含一个命令文本。
2表示被执行的字符串包含一个表名。
4表示被执行的字符串包含一个存储过程名。
8没有指定字符串的内容(这是默认值)
BeginTrans开始一个新的事务,即在内存中为事务开辟一片内存缓冲区。
CommitTrans提交事务,即把一次事务中所有变动的数据从内存缓冲区一次性地写入硬盘,结束当前事务并可能开始一个新的事务。
RollbackTrans回滚事务,即取消开始此次事务以来对数据源的所有操作,并结束本次事务操作。
4、创建数据库连接步骤如下:

a) 创建 Connection 对象实例,格式如下:

Set conn=Server.CreateOreateObject("ADODB.Connection")

b) 指定连接字符串

conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:MardetData sg1.mdb"

或:

"创建 OLEDB 连接字符串

CS="Provider=Microsoft.jet.OLEDB;4.0;Data Source="
conn.ConnectionStrin=CS & Server.MapPath("rsgl.mdb")

注:连接字符串在等号(=)的左右都不包含空格。

c) 打开数据库连接

Connobject.Cpen connectionstring,UserID,Password

d) 关闭与数据源的连接

object.Close

e) 释放 Connection 对象所占用的所有资源

Set Connobject=nothing

5、Connection对象的方法和属性的简单应用实例

1)、使用Connection对象的Execute方法在rsgl.mdb数据库中创建一个名为“员工基本情况表”。其代码如下(etable) :

<% @ Language="VBScript" %>
<html>
<head>
<title>在ASP页面上创建新表</title>
</head>
<body>
<div align="center">
<h3>在ASP页面上创建新表</h3>
<hr width="50%" color="#cccc99">
<p>正在创建表......</p>
</div>
<!-- #include virtual ="/adovbs.inc" -->
<%
dim cnn,sSQL
set cnn=Server.CreateObject("ADODB.Connection")
"指定连接字符串,默认数据库为master
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("rsgl.mdb")
cnn.Open
sSQL="CREATE table 员工基本情况表(员工姓名 varchar(10),所在部门 varchar(10),家庭住址 varchar(12),家庭电话 varchar(15),Email varchar(20))"
"执行create database命令
cnn.Execute sSQL,,adCmdText
cnn.Close
set cnn=Nothing
%>
<p><center><b>创建表成功!</b></center></p>
</body>
</html>

2)、(添加记录页面)实例通过一个表单页面(eRs.htm),将数据提交给添加记录处理页面(eRs.asp),在该页面中,通过使用Connection对象的Execute方法执行Insert命令,在表尾添加一个新记录。eRs.htm代码如下:

<html>
<head><title>添加记录页面</title></head>
<body>
<form name="form1" method="post" action="eRs.asp">
<table align="center" border="1">
<tr><td colspan="2" align="center">添加记录表</td></tr>
<tr><td align="right">员工姓名:</td><td width="150"><input type="text" name="txtname"></td></tr>
<tr><td align="right">所在部门:</td><td><input type="text" name="txtbm"></td></tr>
<tr><td align="right">家庭住址:</td><td><input type="text" name="txtzz"></td></tr>
<tr><td align="right">家庭电话:</td><td><input type="text" name="txtTel"></td></tr>
<tr><td align="right">Email:</td><td><input type="text" name="txtEmail"></td></tr>
<tr><td align="center"><input type="submit" value="提交"></td><td align="center"><input type="reset" value="全部重写"></td></tr>
</table>
</form>
</html>

eRs.asp页面的代码如下:

<html>
<head><title>添加记录页面</title></head>
<body>
<form name="form1" method="post" action="eRs.asp">
<table align="center" border="1">
<tr><td colspan="2" align="center">添加记录表</td></tr>
<tr><td align="right">员工姓名:</td><td width="150"><input type="text" name="txtname"></td></tr>
<tr><td align="right">所在部门:</td><td><input type="text" name="txtbm"></td></tr>
<tr><td align="right">家庭住址:</td><td><input type="text" name="txtzz"></td></tr>
<tr><td align="right">家庭电话:</td><td><input type="text" name="txtTel"></td></tr>
<tr><td align="right">Email:</td><td><input type="text" name="txtEmail"></td></tr>
<tr><td align="center"><input type="submit" value="提交"></td><td align="center"><input type="reset" value="全部重写"></td></tr>
</table>
</form>
</html>