清华大学出版社 TSINGHUA UNIVERSITY PRESS ASP访问数据库 第一步:指定想要连接的数据库,有DSN和 DSN-less两种方法。 DSNData Source Name数据源名称)建立一个系统数据源名称 方法如下: 1、单击“开始”,选设置控制面板。 2、双击图标“32位ODBC”,将弹出一个对话框,选标签 “ System DsN 3、单击“Add添加一个DSN入口,选择如“ Microsoft Access driⅳver”并确认。 4、在 “ Data Source namn”田論入你系胡宗的nN,然 后单击“Secr”选择数据都能包在m还是之后,pN字符单选 取。 5、以上步骤完成后在ASP程序中指定DSN,如下: oconnstr=filedsnEmydatabase dsn'olo>
第一步 : 指定想要连接的数据库,有 DSN 和 DSN-less 两种方法。 ASP访问数据库 DSN(Data Source Name 数据源名称): 建立一个系统数据源名称 方法如下 : 1、单击“开始”,选设置控制面板。 2、双击图标“32 位 ODBC” , 将弹出一个对话框,选标签 “System DSN” 3、单击“Add”添加一个DSN 入口 , 选择如“Microsoft Access Driver”并确认。 4、在“Data Source Name”栏里输入你希望指定的DSN, 然 后单击“Select”选择数据库存放位置,你可以按“Browse”来选 取。 5、以上步骤完成后在ASP 程序中指定 DSN,如下 : 注意:无论在等号(=)之前还是之后,DSN字符串 都不能包含空格
清华大学出版社 TSINGHUA UNIVERSITY PRESS DSN-ess:是另一种通过在ASP文件里直接指定数据库 文件所在位置,而无需建立DSN的方法。由于许多 公司没有自己的WEB服务器,他们的网站往往是存 放在远端的虚拟服务器上,因此要建立和修改DSN 的设置比较麻烦。而使用DSN-less方法直接指定远端 数据库所在位置恰恰解决了这一问题,方法如下:
DSN-less: 是另一种通过在 ASP 文件里直接指定数据库 文件所在位置,而无需建立 DSN 的方法。由于许多 公司没有自己的 WEB 服务器,他们的网站往往是存 放在远端的虚拟服务器上,因此要建立和修改 DSN 的设置比较麻烦。而使用 DSN-less 方法直接指定远端 数据库所在位置恰恰解决了这一问题,方法如下 :
清华大学出版社 TSINGHUA UNIVERSITY PRESS <% constr DBQ=+server mappath( database/source. mdb")+ DefaultDir -A DRIVER=Microsoft Access Driver c. mdb); Driverld=25; FIL=MS Access; ImplicitCommitsync=Yes; Max BufferSize=512; MaxScanR Ows=8; PageTimeout=5; Safe Transactions=0; Threads=3; User Com mitSync=Yes: constr="Provider=microsoft Jet OLEDB 4.0: Data Source="& server mappath(data/database. md b 如果你的服务器采用较老版本Accs动,请用下面连接方法 constr="driver= Microsoft Access Driver(.mdb); dbq& server mappath(data/database. mdb")
清华大学出版社 TSINGHUA UNIVERSITY PRESS 指定了想要连接的数据库后,就可以通过以下方法连接并 打开数据库:
指定了想要连接的数据库后,就可以通过以下方法连接并 打开数据库:
清华大学出版社 TSINGHUA UNIVERSITY PRESS 第二步:指定想要执行的SQL指令,可以使用 Recordset。 当连接了数据库后就可以对数据库进行操作,比如增加、 删除、査询、更新等等,这些操作都是通过SQL指令来 完成的,如下例在数据库表 database中查询所有姓名中有 “A”的记录
第二步 : 指定想要执行的 SQL 指令,可以使用 RecordSet。 当连接了数据库后就可以对数据库进行操作,比如增加、 删除、查询、 更新等等,这些操作都是通过 SQL 指令来 完成的,如下例在数据库表 database 中查询所有姓名中有 “A”的记录 :
清华大学出版社 TSINGHUA UNIVERSITY PRESS Conn Execute DELETE FROM CustomerS WHERE LastName = 'smith >
清华大学出版社 TSINGHUA UNIVERSITY PRESS 尽管 Connection对象简化了连接数据库和查询 任务,但 Connection对象仍有许多不足。确切地 说,检索和显示数据库信息的 Connection对象不 能用于创建脚本,编程者必须确切知道要对数据库 作出的更改,然后才能使用查询实现更改。 对于检索数据、检査结果、更改数据库,ADO 提供了 Recordset对象
尽管 Connection 对象简化了连接数据库和查询 任务,但 Connection 对象仍有许多不足。确切地 说,检索和显示数据库信息的 Connection 对象不 能用于创建脚本,编程者必须确切知道要对数据库 作出的更改,然后才能使用查询实现更改。 对于检索数据、检查结果、更改数据库, ADO 提供了 Recordset 对象
清华大学出版社 TSINGHUA UNIVERSITY PRESS Recordset对象 Recordset对象检索并且显示一组数据库行,即记录, Recordset 对象保持査询返回的记录的位置,允许一次一项逐步扫描结果 根据 Recordset对象的指针类型属性设置,可以滚动和更新记录。 ·数据库指针可以在一组记录中定位到特定的项,还用于检索和检 查记录,然后在这些记录的基础上执行操作。 · Recordset对象有一些属性,可用于精确地控制指针的行为,提 高检查和更新结果的能力。 例如: Recordset的使用方法如下 Set rs= Server Createobject(" adodB. recordset") rs. Open sql指令,Con,1,1'读取 或 rs: Open SQL指令,Conn,1,3'新增、修改、或删除
• Recordset 对象检索并且显示一组数据库行,即记录,Recordset 对象保持查询返回的记录的位置,允许一次一项逐步扫描结果。 • 根据 Recordset 对象的指针类型属性设置,可以滚动和更新记录。 • 数据库指针可以在一组记录中定位到特定的项,还用于检索和检 查记录,然后在这些记录的基础上执行操作。 • Recordset 对象有一些属性,可用于精确地控制指针的行为,提 高检查和更新结果的能力。 例如:Recordset 的使用方法如下 Recordset 对象 Set rs = Server.CreateObject("ADODB.Recordset") rs.Open SQL 指令 , Conn, 1, 1 ' 读取 或 rs.Open SQL 指令 , Conn, 1, 3 ' 新增、修改、或删除
清华大学出版社 TSINGHUA UNIVERSITY PRESS Recordset对象open方法的格式: recordset Open Source, Active Connection, CursorType, LockType, Options open后面的参数均为可选项 参数说明 Source: Recordset对象可以通过 Source属性来连接 Command 对象。 Source参数可以是一个 Command对象名称、一段SQL命令 个指定的数据表名称或是一个 Stored Procedure。假如省略这个 参数,系统则采用 Recordset对象的 Source属性。 Active connection: Recordset对象可以通过 Active connection 属性来连接 Connection对象。 Active Connection可以是一个 Connection对象或是一串包含数据 库连接信息( Connection String)的字符串参数
Recordset对象Open方法的格式: recordset.Open Source, ActiveConnection, CursorType, LockType, Options ◼ActiveConnection:Recordset对象可以通过ActiveConnection 属性来连接Connection对象。 ActiveConnection可以是一个Connection对象或是一串包含数据 库连接信息(ConnectionString)的字符串参数。 Open后面的参数均为可选项 参数说明 ◼Source:Recordset对象可以通过Source属性来连接Command 对象。Source参数可以是一个Command对象名称、一段SQL命令、 一个指定的数据表名称或是一个Stored Procedure。假如省略这个 参数,系统则采用Recordset对象的Source属性
清华大学出版社 TSINGHUA UNIVERSITY PRESS 键相当于书签,只可根据健集的不支持健,是行的动态集合, 健值,添加、改变或删除基础数动态添加改变或删除基础数 据库表或表的行。获取更新行据库表或表的行。获取更新 的查询结果。 行的查询结果。 「常量 说明 adopen 打开-仅向前类型 rdoResults象。 ForwardOnly即只可以飞头到尾搜索行缺省 adOpen Keyset打开一个键集类型 rdo Resultset象 adOpen Dynamic打开一个动态类型 rdoresultset象。 adOpen Static打开一个静态类型 rdoresultset对象。 打开客户端 Recordset对象时唯一允许使用的游标类 型,这个游标使用的结果集合中的成员关系、顺序和值 通常是固定的。相当于结果集的副本观察不到动态变化
adOpenStatic 打开一个静态类型rdoResultset 对象。 打开一个键集类型rdoResultset 对象。 adOpenDynamic 打开一个动态类型rdoResultset 对象。 adOpenKeyset 打开一个仅向前类型rdoResultset对象。 即只可以从头到尾搜索行(缺省值) adOpen ForwardOnly 常 量 说 明 ◼ CursorType:确定提供者打开 Recordset 时应该 使用的游标类型。可为下列常量之一 健相当于书签,只可根据健集的 健值,添加、改变或删除基础数 据库表或表的行。 获取更新行 的查询结果。 不支持健,是行的动态集合, 动态添加改变或删除基础数 据库表或表的行。 获取更新 行的查询结果。 打开客户端 Recordset 对象时唯一允许使用的游标类 型,这个游标使用的结果集合中的成员关系、顺序和值 通常是固定的。相当于结果集的副本观察不到动态变化