数据库访问技术

上传人:汽*** 文档编号:578965600 上传时间:2024-08-25 格式:PPT 页数:25 大小:363.81KB
返回 下载 相关 举报
数据库访问技术_第1页
第1页 / 共25页
数据库访问技术_第2页
第2页 / 共25页
数据库访问技术_第3页
第3页 / 共25页
数据库访问技术_第4页
第4页 / 共25页
数据库访问技术_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《数据库访问技术》由会员分享,可在线阅读,更多相关《数据库访问技术(25页珍藏版)》请在金锄头文库上搜索。

1、第第第第8 8章章章章 WebWeb数据库访问技术数据库访问技术数据库访问技术数据库访问技术内容简介:内容简介:内容简介:内容简介:本章主要介绍随着本章主要介绍随着本章主要介绍随着本章主要介绍随着InternetInternet的发展,静态的发展,静态的发展,静态的发展,静态WebWeb站点的站点的站点的站点的开发与维护变得越来越困难,其最大的问题就是缺少开发与维护变得越来越困难,其最大的问题就是缺少开发与维护变得越来越困难,其最大的问题就是缺少开发与维护变得越来越困难,其最大的问题就是缺少交互性,信息的内容只有在网站管理人员更改后才能交互性,信息的内容只有在网站管理人员更改后才能交互性,信息

2、的内容只有在网站管理人员更改后才能交互性,信息的内容只有在网站管理人员更改后才能发生变化,使得发生变化,使得发生变化,使得发生变化,使得WebWeb管理员不得不频繁修改他们的网管理员不得不频繁修改他们的网管理员不得不频繁修改他们的网管理员不得不频繁修改他们的网页。为了向网络用户提供大量有用的、动态的和可交页。为了向网络用户提供大量有用的、动态的和可交页。为了向网络用户提供大量有用的、动态的和可交页。为了向网络用户提供大量有用的、动态的和可交互的信息,凡是能够数据库化的内容,应尽量做成数互的信息,凡是能够数据库化的内容,应尽量做成数互的信息,凡是能够数据库化的内容,应尽量做成数互的信息,凡是能够

3、数据库化的内容,应尽量做成数据库的形式,因为数据库形式的数据远比其他形式的据库的形式,因为数据库形式的数据远比其他形式的据库的形式,因为数据库形式的数据远比其他形式的据库的形式,因为数据库形式的数据远比其他形式的数据要容易更新与管理。数据要容易更新与管理。数据要容易更新与管理。数据要容易更新与管理。 第第第第8 8章章章章 WebWeb数据库访问技术数据库访问技术数据库访问技术数据库访问技术8.1 Web8.1 Web数据库访问技术简介数据库访问技术简介数据库访问技术简介数据库访问技术简介 8.2 ODBC8.2 ODBC8.3 ADO8.3 ADO8.4 8.4 结构化查询语言结构化查询语言

4、结构化查询语言结构化查询语言SQLSQL8.5 8.5 使用使用使用使用ASPASP访问数据库访问数据库访问数据库访问数据库8.6 8.6 远远远远程程程程教教教教育育育育系系系系统统统统说说说说明明明明数数数数据据据据库库库库设设设设 计与管理模块计与管理模块计与管理模块计与管理模块 8.1 Web数据库访问技术简介数据库访问技术简介1. 数据访问技术概述数据访问技术概述 基于基于Web的数据库访问技术是指:在客户端安装的数据库访问技术是指:在客户端安装Web浏览器,作为浏览器,作为用户输入查询条件和显示查询结果的交互界面。用户输入查询条件和显示查询结果的交互界面。2. CGI CGI(Co

5、mmon Gateway Interface)是外部应用程序与是外部应用程序与Web服务器服务器交互的一个标准接口。交互的一个标准接口。CGI应用程序可以完成客户端与服务器的交互操应用程序可以完成客户端与服务器的交互操作。作。3. ODBC API方法与方法与Web服务器结合紧密,所以性能较高。但是利用底层服务器结合紧密,所以性能较高。但是利用底层的的API开发数据库访问程序仍然很困难,因此一般使用基于底层开发数据库访问程序仍然很困难,因此一般使用基于底层API的的高层数据库编程接口,这就是我们所说的高层数据库编程接口,这就是我们所说的ODBC。ODBC是是“开放数据开放数据库互连库互连”的简

6、称,是一种使用的简称,是一种使用SQL的应用程序接口的应用程序接口(API)。 4. 一致的数据访问技术一致的数据访问技术ADO/OLE DB 一致数据访问包括两层软件接口,分别为一致数据访问包括两层软件接口,分别为ADO(Active Data Object) 和和OLE DB,对应于不同层次的应用开发,对应于不同层次的应用开发,ADO 提供了高层提供了高层软件接口;软件接口;OLE DB 提供了底层软件接口。提供了底层软件接口。ADO 以以OLE DB 为基础,为基础,它对它对OLE DB 进行了封装。进行了封装。 8.2 ODBC ODBC(Open Database Connectiv

7、ity,开放数据库互连开放数据库互连)是微软公司开放服务结构是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访它建立了一组规范,并提供了一组对数据库访问的标准问的标准API(应用程序编程接口)。这些(应用程序编程接口)。这些API利用利用SQL来完成其大部分任务。来完成其大部分任务。ODBC本本身也提供了对身也提供了对SQL语言的支持,用户可以直接语言的支持,用户可以直接将将SQL语句送给语句送给ODBC。 8.2.1 ODBC概念概念 一个完整

8、的一个完整的ODBC由下列几个部件组成:由下列几个部件组成:1.用程序用程序(Application)2.DBC管理器管理器(Administrator)。该程序位。该程序位于于Windows 95控制面板控制面板(Control Panel)的的32位位ODBC内,其主要任务是管理安装内,其主要任务是管理安装的的ODBC驱动程序和管理数据源。驱动程序和管理数据源。3.驱动程序管理器驱动程序管理器(Driver Manager)。驱。驱动程序管理器包含在动程序管理器包含在ODBC32.DLL中,对中,对用户是透明的。其任务是管理用户是透明的。其任务是管理ODBC驱动驱动程序,是程序,是ODBC

9、中最重要的部件。中最重要的部件。4.ODBC API5.ODBC 驱动程序。是一些驱动程序。是一些DLL,提供了,提供了ODBC和数据库之间的接口。和数据库之间的接口。6.数据源。数据源包含了数据库位置和数据数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的库类型等信息,实际上是一种数据连接的抽象。抽象。ODBC模型模型 8.2.2 配置数据源配置数据源1. Access数据库系统数据库系统DSN的配置方法的配置方法 Step1:单击添加后弹出对话框,选择:单击添加后弹出对话框,选择数据源为数据源为 Driver do Microsoft Access (*.mdb)单击

10、完成。单击完成。 Step2:这时弹出一个:这时弹出一个 “ODBC Microsoft Access安装安装”的对话框,的对话框,在对话框的数据源名文本输入框中在对话框的数据源名文本输入框中输入配置的输入配置的DSN文件名,如果文件名,如果test_dsn,然后单击,然后单击 “选择选择”按钮。按钮。Step3:这时将弹出对话框,在对话框:这时将弹出对话框,在对话框的数据库名中输入的数据库名中输入 “c:test.mdb”,或是从右边的目录浏览器中选择,或是从右边的目录浏览器中选择“驱动器驱动器C”- “test.mdb” 。选择。选择数据库完成后,单击确定按钮将回数据库完成后,单击确定按钮

11、将回到第二步界面。到第二步界面。 Step4:单击:单击“确定确定”,请注意,这时,请注意,这时在系统数据源列表框中出现了在系统数据源列表框中出现了“test_dsn” 项。项。Access数据库系数据库系统统DSN配置完成。配置完成。 2. SQL Server数据库系统数据库系统DSN的配置的配置方法方法 Step1:在弹出的对话框中的驱动程序:在弹出的对话框中的驱动程序中选择中选择SQL Server项。项。Step2:单击:单击“完成完成”,这时将弹击一,这时将弹击一个对话框,在对话框的名称文本输个对话框,在对话框的名称文本输入框中输入要配置的入框中输入要配置的DSN文件名。文件名。S

12、tep3:单击:单击“下一步下一步”,此时我们如,此时我们如果在第二步时选择的是通过果在第二步时选择的是通过IP地址地址连接服务器,请选择客户端配置选连接服务器,请选择客户端配置选项,调出配置对话框。项,调出配置对话框。 Step5:单击:单击“下一步下一步”,在,在“改变默改变默认的数据库认的数据库”的复选框中打勾,并的复选框中打勾,并选择选择test数据库。数据库。 Step6:单击:单击“下一步下一步”。 Step7:单击:单击“完成完成”。 Step8:单击:单击“测试数据库测试数据库”按钮以进按钮以进行测试,行测试,Step9:单击:单击“确定确定”,这时在系统数,这时在系统数据源列

13、表框中出现了据源列表框中出现了“test_dsn_sql” 项,项,SQL Server数据库系统数据库系统DSN配置完成。配置完成。 接下来我们就讲述一下系统DSN的配置过程。 8.3 ADO 前面已经简单介绍过,前面已经简单介绍过,ActiveX数据对象数据对象(ADO)是允许用户与数据存储进行交互的组件。是允许用户与数据存储进行交互的组件。这意味着只要基于某些数据就可建立一个网页,这意味着只要基于某些数据就可建立一个网页,或一种完全交互的电子商务系统。不论那种方或一种完全交互的电子商务系统。不论那种方式,都是式,都是ADO使我们能与数据进行通信。使我们能与数据进行通信。ADO/OLE D

14、B是使用是使用ASP访问数据库最常用访问数据库最常用也是最有效的方法,是我们学习的重点内容。也是最有效的方法,是我们学习的重点内容。8.3.1 ADO数据访问技术数据访问技术概述概述1OLE DB和和ADO的体系结构的体系结构 OLE DB和和ADO是为解决是为解决访问数据的方法主要考虑与访问数据的方法主要考虑与数据存储保持永久连接的情数据存储保持永久连接的情况下处理数据而设计的,并况下处理数据而设计的,并提供断开连接的记录集提供断开连接的记录集 。2. 消费者与提供者消费者与提供者 提供者是提供数据的物体,提供者是提供数据的物体,消费者是使用消费者是使用(消耗消耗)这些数这些数据的物体。据的

15、物体。 3. 提供者和驱动程序提供者和驱动程序 提供者与驱动程序的区别提供者与驱动程序的区别 8.3.2 ADO的对象类和对象模型的对象类和对象模型1. Connection对象对象 Connection对象是使我们能与数据存储相连的对象。对象是使我们能与数据存储相连的对象。2. Command对象对象 Command对象是对数据存储执行命令的对象。对象是对数据存储执行命令的对象。 3. Recordset对象对象 Recordset对象是对象是ADO中使用最为普遍的对象,因为它含有从数据中使用最为普遍的对象,因为它含有从数据存储中提取的数据集。存储中提取的数据集。4. Record对象对象5

16、. Stream对象对象 Stream对象用于访问节点的内容对象用于访问节点的内容 6. 集合集合 ADO对象库中有一些集合,每个集合都有零个或更多个与其关联的对象库中有一些集合,每个集合都有零个或更多个与其关联的对象的拷贝。对象的拷贝。7. ADO常数常数 当使用当使用ADO时,会发现有许多预先定义的用于众多选项的常数,比时,会发现有许多预先定义的用于众多选项的常数,比如定义光标类型和锁类型的常数。如定义光标类型和锁类型的常数。 8.4 结构化查询语言结构化查询语言SQL SQL全称是全称是“结构化查询语言结构化查询语言(Structured Query Language)”,最早的是,最早

17、的是IBM的圣约瑟研究实的圣约瑟研究实验室为其关系数据库管理系统验室为其关系数据库管理系统SYSTEM R开发的一种开发的一种查询语言,它的前身是查询语言,它的前身是SQUARE语言。语言。SQL语言结构语言结构简洁,功能强大,简单易学,所以自从简洁,功能强大,简单易学,所以自从IBM公司公司1981年推出以来,年推出以来,SQL语言,得到了广泛的应用。如今无语言,得到了广泛的应用。如今无论是像论是像Oracle ,Sybase,Informix,SQL server这些这些大型的数据库管理系统,还是像大型的数据库管理系统,还是像Visual Foxporo,PowerBuilder这些微机上

18、常用的数据库开发这些微机上常用的数据库开发系统,都支持系统,都支持SQL语言作为查询语言。语言作为查询语言。8.4.1 SQL语言概述语言概述 Structured Query Language包含包含4个部分:个部分: 数据查询语言数据查询语言DQL-Data Query Language SELECT 数据操纵语言数据操纵语言DQL-Data Manipulation Language INSERT, UPDATE, DELETE 数据定义语言数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP 数据控制语言数据控制语言DQL-Dat

19、a Control Language COMMIT WORK, ROLLBACK WORK SQL它的优点它的优点1. 非过程化语言非过程化语言 SQL是一个非过程化的是一个非过程化的语言,因为它一次处理一个记录,语言,因为它一次处理一个记录,对数据提供自动导航。对数据提供自动导航。 2. 统一的语言统一的语言 SQL可用于所有用户的可用于所有用户的DB活动模型,包括系统管理员、活动模型,包括系统管理员、数据库管理员、数据库管理员、 应用程序员、应用程序员、决策支持系统人员及许多其它类决策支持系统人员及许多其它类型的终端用户。型的终端用户。 3. 是所有关系数据库的公共语言是所有关系数据库的公

20、共语言 由于所有主要的关系数由于所有主要的关系数据库管理系统都支持据库管理系统都支持SQL语言,语言,用户可将使用用户可将使用SQL的技能从一个的技能从一个RDBMS转到另一个。所有用转到另一个。所有用SQL编写的程序都是可以移植的。编写的程序都是可以移植的。8.4.2 SQL数据操作基础数据操作基础1. SQL语句的特点语句的特点 SQL有两个特点:所有数据存储在表中,从有两个特点:所有数据存储在表中,从SQL的角度来说,表中的的角度来说,表中的记录没有顺序。记录没有顺序。 2. 使用使用SQL从表中取记录从表中取记录 SQL的主要功能之一是实现数据库查询。的主要功能之一是实现数据库查询。3

21、. 创建表格创建表格 SQL语言中的语言中的create table语句被用来建立新的数据库表格。语句被用来建立新的数据库表格。 4. 数据查询数据查询 在众多的在众多的SQL命令中,命令中,select语句应该算是使用最频繁的。语句应该算是使用最频繁的。select语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。5. 向表格中添加、更新、删除记录向表格中添加、更新、删除记录 6. 删除数据库表格删除数据库表格 在在SQL语言中使用语言中使用drop table命令删除某个表格以及该表格中的所命令删除某个表格以及该

22、表格中的所有记录。有记录。 8.4.3 SQL高级应用高级应用1.建立索引建立索引 (1) 聚簇索引和非聚簇索引聚簇索引和非聚簇索引 (2) 索引属性索引属性 (3) 用用SQL建立索引建立索引2. 集合函数集合函数 Microsoft SQL支持五种类型的集合函数。你支持五种类型的集合函数。你可以统计记录数目,平均值,最小值,最大值,或可以统计记录数目,平均值,最小值,最大值,或者求和。当你使用一个集合函数时,它只返回一个者求和。当你使用一个集合函数时,它只返回一个数,该数值代表这几个统计值之一。数,该数值代表这几个统计值之一。8.5 使用使用ASP访问数据库访问数据库8.5.1 ASP与数

23、据库的连接与数据库的连接1.与Microsoft Access数据库建立连接 方法一: 1 - 创建 Connection 对象 2 - 使用 Connection 对象的 Open 方法打开数据库 3 - 使用 Connection 对象的 Close 方法关闭连接 4 - 将Connection 对象从内存中删除,以释放资源 方法二:用OLE DB创建Microsoft Access连接 2. 与SQL Server数据库建立连接 8.5.2 检索数据库内容检索数据库内容方法一:只使用方法一:只使用 Connection 对象。对象。方法二:通过创建方法二:通过创建 Recordset 对

24、象。对象。8.5.3 分页技术分页技术 前面我们介绍了如何检索数据并输出到浏前面我们介绍了如何检索数据并输出到浏览器端,对少量数据而言,那样简单的输出处览器端,对少量数据而言,那样简单的输出处理是完全可以的,但是若数据量很大,有几百理是完全可以的,但是若数据量很大,有几百条甚至上千条,一次将如此多的数据全部输出条甚至上千条,一次将如此多的数据全部输出到客户端是不现实的,一来页面从上到下拉得到客户端是不现实的,一来页面从上到下拉得很长,二来客户端等待的时间过长,三来服务很长,二来客户端等待的时间过长,三来服务器的负载过大。所以采取分页输出非常必要。器的负载过大。所以采取分页输出非常必要。8.5.

25、4向数据库中添加新数据向数据库中添加新数据方法一:使用方法一:使用SQL语句。语句。方法二:使用方法二:使用Recordset对象的对象的Addnew方方法。法。8.5.5修改数据库中已存在的数据修改数据库中已存在的数据方法一:使用方法一:使用 SQL 语句。例语句。例test36.asp,程序基本上与,程序基本上与test34.asp类似,这里类似,这里仅列出关键部分。仅列出关键部分。方法二:使用方法二:使用 Recordset 对象的对象的 Update 方法。方法。8.5.6 删除数据库中的数据删除数据库中的数据方法一:使用方法一:使用 SQL 语句。例程语句。例程test38.asp方

26、法二:使用方法二:使用 Recordset 对象的对象的 Delete 方法。方法。8.5.7 调用存储过程调用存储过程 在客户端工作站中执行大而复杂的在客户端工作站中执行大而复杂的SQL批处理时,存储过程提供了诸多方便之处:可批处理时,存储过程提供了诸多方便之处:可以在存储过程中利用以在存储过程中利用Transact-SQL的强大功的强大功能。一个能。一个SQL存储过程可以包含多个存储过程可以包含多个SQL语语句。通过使用变量和条件。能够用存储过程建句。通过使用变量和条件。能够用存储过程建立非常复杂的查询,以非常复杂的方式更新数立非常复杂的查询,以非常复杂的方式更新数据库。据库。 调用存储过

27、程的方法需要使用调用存储过程的方法需要使用ADO的的Command对象对象。 8.6 远程教育系统说明远程教育系统说明数据库设计与管理模块数据库设计与管理模块 本系统的核心功能即是数据库的设本系统的核心功能即是数据库的设计与访问,只有合理且完整的完成数据计与访问,只有合理且完整的完成数据库功能才能保证系统内部信息的流畅,库功能才能保证系统内部信息的流畅,以及用户便捷的使用。另外,我们也可以及用户便捷的使用。另外,我们也可以从中学习到实际编程中数据库的设计以从中学习到实际编程中数据库的设计和代码编写技巧。和代码编写技巧。8.6.1 数据库设计数据库设计1. 总体说明总体说明2. 教程与课件表(表

28、名称:教程与课件表(表名称:T_Tetutorial)3. 教程类别表(教程类别表(T_Tetutorialclass)4. 教师信息表(教师信息表(T_Teacher)5. 用户信息表(用户信息表(T_User)6. 测验表(测验表(T_Test)7. 答疑问题表(答疑问题表(T_Question)8. 答疑回答表(答疑回答表(T_Question)9. 用户学习笔记信息表(用户学习笔记信息表(T_Note)10. 系统公告表(系统公告表(T_News)11. 资料信息表(资料信息表(T_Book)12. 系统设置表(系统设置表(T_Sysconfig)13. 管理员信息表(管理员信息表(T

29、_Admin)14. 留言信息表(留言信息表(T_Admin)8.6.2 教师功能模块教师功能模块1功能说明功能说明2主要模块说明主要模块说明(1)发布教学讯息)发布教学讯息(2)答疑管理)答疑管理(3)试题管理)试题管理8.6.3 管理员功能模块管理员功能模块 为管理员用模块,包括学生管理、教师管理、课为管理员用模块,包括学生管理、教师管理、课程管理、资源管理、试题维护、权限管理、报表管理程管理、资源管理、试题维护、权限管理、报表管理等子模块。等子模块。1学生管理学生管理 管理学生管理学生“个人信息个人信息”、“所选课程所选课程”、“所在所在班级班级”等。管理员通过等。管理员通过WEB页面输

30、入用户名后,查询页面输入用户名后,查询用户的基本资料,并可以对用户的信息进行新增、删用户的基本资料,并可以对用户的信息进行新增、删除、更新操作。除、更新操作。2教师管理教师管理 管理教师管理教师 “个人信息个人信息”、“所开课程所开课程”、“教教学状况学状况”等。等。 3课程管理课程管理 分专业、类型来管理课程,指定授课教师,课程开分专业、类型来管理课程,指定授课教师,课程开课班级数目。课班级数目。 本章小结 本章主要介绍了本章主要介绍了Web数据库访问技术。数据库访问技术。数据访问技术概:基于数据访问技术概:基于Web的数据库访问技术是指:在客户端安装的数据库访问技术是指:在客户端安装Web

31、浏览器,作为浏览器,作为用户输入查询条件和显示查询结果的交互界面。用户输入查询条件和显示查询结果的交互界面。ODBC(Open Database Connectivity,开放数据库互连,开放数据库互连)是微软公司开放服务结构是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些(应用程序编程接口)。这些API利用利用SQL来完成其大部分任务。来完成其大部分任务。

32、ODBC本身也提供了对本身也提供了对SQL语言的支持,用户可以语言的支持,用户可以直接将直接将SQL语句送给语句送给ODBC。ActiveX数据对象数据对象(ADO)是允许用户与数据存储进行交互的组件。这意味着只要基于某是允许用户与数据存储进行交互的组件。这意味着只要基于某些数据就可建立一个网页,或一种完全交互的电子商务系统。不论那种方式,都是些数据就可建立一个网页,或一种完全交互的电子商务系统。不论那种方式,都是ADO使我们能与数据进行通信。使我们能与数据进行通信。ADO/OLE DB是使用是使用ASP访问数据库最常用也是最有访问数据库最常用也是最有效的方法,是我们学习的重点内容。效的方法,

33、是我们学习的重点内容。SQL全称是全称是“结构化查询语言结构化查询语言(Structured Query Language)”,最早的是,最早的是IBM的圣约的圣约瑟研究实验室为其关系数据库管理系统瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是开发的一种查询语言,它的前身是SQUARE语言。语言。SQL语言结构简洁,功能强大,简单易学,所以自从语言结构简洁,功能强大,简单易学,所以自从IBM公司公司1981年年推出以来,推出以来,SQL语言,得到了广泛的应用。如今无论是像语言,得到了广泛的应用。如今无论是像Oracle ,Sybase,Informix,SQL

34、 server这些大型的数据库管理系统,还是像这些大型的数据库管理系统,还是像Visual Foxporo,PowerBuilder这些微机上常用的数据库开发系统,都支持这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言作为查询语言。语言。使用使用ASP访问数据库访问数据库远程教育系统说明远程教育系统说明数据库设计与管理模块:本系统的核心功能即是数据库的设计与访数据库设计与管理模块:本系统的核心功能即是数据库的设计与访问,只有合理且完整的完成数据库功能才能保证系统内部信息的流畅,以及用户便捷的问,只有合理且完整的完成数据库功能才能保证系统内部信息的流畅,以及用户便捷的使用。另外,我们也可以从中学习到实际编程中数据库的设计和代码编写技巧。使用。另外,我们也可以从中学习到实际编程中数据库的设计和代码编写技巧。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号