Presentation is loading. Please wait.

Presentation is loading. Please wait.

主讲:史治平 地址:四川电大计算机教研室 电话:

Similar presentations


Presentation on theme: "主讲:史治平 地址:四川电大计算机教研室 电话:"— Presentation transcript:

1 主讲:史治平 地址:四川电大计算机教研室 电话:028-87768609 邮件:szp@scrtvu.net
第七章 ADO访问数据库 主讲:史治平 地址:四川电大计算机教研室 电话:

2 ADO工作原理 ODBC OLEDB 服务器 客户机 数据库 服务器 浏览器 ASP ADO

3 ADO对象 Connection:用于创建ASP脚本和指定数据库的连接。 Command:
负责对数据库提供请求,也就是传递指定的SQL命令。 RecordSet:负责浏览和操作从数据库中取得的数据。 Field:指定RecordSet对象的数据字段。 Error:记录连接过程中所有发生的错误信息。 Parameter: 负责传递Command对象所需要的SQL命令参数。

4 制作步骤 创建数据库 创建数据源 编写文件

5 制作实例 聊天室功能演示 创建数据库chatroom.mdb包含数据表UserOnLine 创建ODBC数据源chatroom 编写文件
chatroominsert.asp(7-1.asp) chatroomselect.asp

6 数据库chatroom.mdb 与数据表UserOnLine

7 创建ODBC数据源chatroom

8 chatroominsert.asp(7-1.asp)
<% Set Conn = Server.CreateObject("ADODB.Connection") conn.open "DSN=chatroom" SQLStmt = "INSERT INTO UserOnline (UserID,RoomName) " SQLStmt = SQLStmt & "VALUES ('szp','黄山1')" Set RS = Conn.Execute(SQLStmt) set rs=nothing Conn.Close set conn=nothing %> 执行结果 在数据库chatroom.mdb的数据表UserOnline中增加了一条记录,而在浏览器中没有任何显示。

9 chatroomselect.asp <%
Set Conn = Server.CreateObject("ADODB.Connection") conn.open "DSN=chatroom" SQLStmt = "select * from UserOnLine" Set RS = Conn.Execute(SQLStmt) %> while not RS.EOF Response.Write RS("UserID")&"(" Response.Write RS("RoomName")&")<br>" RS.MoveNext Wend set rs=nothing Conn.Close set conn=nothing 功能是读取数据库中的数据

10 ADO 英文全称:Active Data Object
主要功能:针对当前Microsoft软件所支持的数据进行操作的最有效、最简单、而且功能最强大的方法。可以简单理解为ASP与数据库之间的一座桥梁。

11 ODBC/ OLE DB 英文名称:Open DataBase Connectivity 中文名称:开放数据库互连。
现在微软正逐步用OLE DB(对象链接与嵌入式数据库)代替ODBC,提供了对数据更有效的访问。

12 SQL 英文名称:Structured Query Languge 中文名称:结构化查询语言
功能:SQL语言是关系数据库的标准语言,在ASP中,无论何时要访问一个数据库,都要使用SQL语言。

13 Connection对象(7-1.asp) 功能:
创建: 使用Server的CreateObject方法。 方法: Open:负责创建与数据源的连接 Close:关闭Connection对象以便释放所有关联的系统资源 Excute:执行SQL语句以及存储过程 BeginTrans CommitTrans RollbackTrans <% Set Conn = Server.CreateObject("ADODB.Connection") conn.open "DSN=chatroom" SQLStmt = "INSERT INTO UserOnline (UserID,RoomName) " SQLStmt = SQLStmt & "VALUES ('szp','黄山1')" Set RS = Conn.Execute(SQLStmt) set rs=nothing Conn.Close set conn=nothing %> 创建对象 初始化连接 产生SQL语句 执行SQL语句 停止连接 释放资源

14 数据的显示 (accesetable.asp)
<% whichDSN="chatroom" call query2table("select * from UserOnline",whichDSN) %> <!--#include file="lib_dbtable.asp"--> 数据源 SQL语句 <% sub query2table(inputquery, inputDSN) dim conntemp, rstemp set conntemp=server.createobject("adodb.connection") conntemp.open inputDSN set rstemp=conntemp.execute(inputquery) howmanyfields=rstemp.fields.count-1 %> 与数据库的连接; 执行SQL语句; 结果存入对象rstemp 字段数量

15 <tr> … </tr>表格中的行 <td>….</td>表格中的单元格
<% rstemp.movenext '显示下一个字段 loop %> </table> rstemp.close set rstemp=nothing conntemp.close set conntemp=nothing end sub <table border=1><tr> <% for i=0 to howmanyfields %> <td><b><%=rstemp(i).name%></b> </td> <% next %> </tr> 先输出字段名 <% do while not rstemp.eof %> <tr> for i = 0 to howmanyfields thisvalue=rstemp(i) If isnull(thisvalue) then thisvalue=" " end if <td valign=top><%=thisvalue%> </td> <% next %> </tr> 现在取出所有数据 显示所有字段名称 <tr> … </tr>表格中的行 <td>….</td>表格中的单元格

16 Connection对象 属性 Attributes commandTimeout ConnectionString
ConnectionTimeout DefaultDatabase Mode Provider

17 Command对象 功能: Command接口表示一个可被数据源处理的命令。 创建:使用Server对象的CreateObject方法。
方法:CreateParameter;Direction等 属性:ActiveConnection;CommandText等。


Download ppt "主讲:史治平 地址:四川电大计算机教研室 电话:"

Similar presentations


Ads by Google