第15章 WEB数据库开发_第1页
第15章 WEB数据库开发_第2页
第15章 WEB数据库开发_第3页
第15章 WEB数据库开发_第4页
第15章 WEB数据库开发_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统原理数据库系统原理与应用技术与应用技术主讲:陈漫红主讲:陈漫红 北京联合大学师范学院北京联合大学师范学院 电气信息系电气信息系第第15章用章用ASP.NET进行进行WEB数据库开数据库开发发 n15.1 Web数据库概述n15.2 开放式数据库开发n15.3 ASP.NET技术技术 n15.4 开发开发Web数据库应用实例数据库应用实例n15.5 本章小结本章小结15.1 Web数据库概述n15.1.1 Web数据库的体系结构 n15.1.2 Web数据库的基本概念n15.1.3 Web环境操作SQL Server数据库15.1 Web数据库概述构,Web数据库充分发挥了DBMS高效

2、的数据存储和管理能力,将客户融入统一的Web浏览器,为用户提供使用简便、内容丰富的服务,已成为Internet的核心服务之一。 HTTP请求请求服务器端客户端数据库数据库HTTP响应响应(数据库数据数据库数据)SQLODBCSQL15.1.1 Web数据库的体系结构数据库的体系结构n客户端只有浏览器(Browser),一般没有应用程序,借助于Java Applet、VBScript、JavaScript、ActiveX技术可以处理一些简单的客户端处理逻辑,显示用户请求Web服务器端的执行结果。n应用层负责接收远程或本地的资料查询请求,然后运行服务器脚本,借助于CGI、ADO等中间部件把资料请求

3、通过ODBC、JDBC、XML for Analysis XML及半结构化数据库系统等发送到数据库服务器上以获取相关资料,再把结果资料转化成HTML及各种脚本传回客户的浏览器。 15.1.1 Web数据库的体系结构数据库的体系结构n数据库层负责管理数据库、实现资料的定义、更新、维护,响应应用服务器的资料请求。 15.1.2 Web数据库的基本概念 ASP的本概念的本概念 nASP的组成包括内置对象、内置组件、脚本组件和第三方组件。(1)ASP提供的内置对象提供的内置对象 对象名称对象名称对象功能对象功能RequestRequest对象对象负责从用户端接收信息负责从用户端接收信

4、息Response对象对象负责传送信息给用户负责传送信息给用户Server对象对象负责控制负责控制ASPASP的运行环境的运行环境Session对象对象负责存储个别用户的信息,以便重复使用负责存储个别用户的信息,以便重复使用Application对象对象负责存储数据以供多个用户使用负责存储数据以供多个用户使用ObjectContext对象对象可供可供ASPASP程序直接配合程序直接配合Microsoft Transaction ServerMicrosoft Transaction Server(MTSMTS)进行分布)进行分布式的事务处理式的事务处理(2) ASP的内置组件的内置组件名称名称

5、功能功能Ad Rotator广告翻转器组件,可以交替地显示图像和文字,并可以通过图像连接到另一个URLBrowser Capabilities浏览器描述组件,可以检查所使用的浏览器,根据其特性以决定传送给浏览器的内容Content Linker内容连接组件,通过应用程序的ASP文件,提供逻辑导航浏览的工具,而不需要文件中的URL参考。可以很方便地使用一个文档来管理超链接、上一页、下一页等连接功能。Content Rotator内容翻转器组件,让HTML内容轮流显示在网页上Counters计数器组件,用于创建、存储、递增或检索任意数量的独立计数器,提供任何种类数据的统计(2) ASP的内置组件的

6、内置组件Email(CDONTS)发送E-Mail给使用者,全称是Collaboration Data Objects for Windows NT ServerPage Counter访问计数器组件,记录来访者打开页面的次数Permission Checker允许检查组件,检查使用者是否有权存取某个文件ActiveX Data Objects用ASP访问数据库的组件名称名称功能功能ASP的脚本和外置组件的脚本和外置组件(3)ASP的脚本组件的脚本组件名称名称功能功能Dictionary用内置函数来完成大量数据的存储和处理等基本任务,提供一种存储值的有效方式。FileAccess文件存取组件,

7、提供读写服务器文件的功能,可取得并修改储存在文件中的信息。(4)ASP的外置组件的外置组件 ASP的外置组件或称第三方组件是使用的外置组件或称第三方组件是使用VB、VC+、VFP等支持组件对象模型技术的语言编写的等支持组件对象模型技术的语言编写的ASP组件,组件,该类组件根据用户需求定制,极大扩展了该类组件根据用户需求定制,极大扩展了ASP的灵活性的灵活性。 ADO的基本概念的基本概念 名称名称功能功能Connection对象负责对数据库的实际连接动作,管理程序对数据的一切操作,是数据库与外界联系的唯一通道,对数据源的任何操作都需要建立一个Connection对象,是ADO的

8、基础。Command对象定义对数据源执行的命令,可以接受SQL命令、表的名称和存储过程的名称。通过对SQL服务器的查询和存储过程的调用,Command对象有强大的数据库访问能力,既可以完成对数据库的插入、删除和访问等无须返回结果的操作,也可以使用Select语句返回一个记录集。Recordset对象用于浏览和操作(包括增加、修改、删除、分页显示、在线编辑)数据库中的数据。Error对象用于返回数据访问过程中所发生的错误或警告信息。Parameter对象用于传递参数给有参数的SQL查询或存储过程。Property对象用于代表ADO对象的动态属性,由数据提供者动态定义。Field对象用于代表一个记

9、录集中的某一列,通过该对象可以取得一个记录急内不同列的值。ADO组件中各集合的名称及其功能组件中各集合的名称及其功能名称名称功能功能Properties集合所有Property对象的集合,用于保存与Connection、Command、Recordset和Field对象有关的各个Property对象。Parameters集合所有Parameter对象的集合,在Command对象中包含有一个Parameters集合。Fields集合所有Field对象的集合,该集合关联着一个Recordset对象的所有列。记录集中返回的每一列在Fields集合中都有一个相关的Field对象。Errors集合所有E

10、rror对象的集合。对ADO对象的操作可能产生一个或多个错误,每当错误发生时,就讲一个或多个Error对象放置到Connection对象的Errors集合中。枚举该集合中的指定错误可使错误处理程序更精确地确定错误产生的来源及其原因,并采用相应的措施解决这些出现的问题。ADO对象与数据集合之间的关系 Connection 对象 Recordset 对象 Error 对象 Parameter 对象 Command 对象 Field 对象 Execute 操作方法 ActiveConnect 属性 Errors 数据 集合 ActiveConnect 属性 Parameters 数据集合 Sourc

11、e 属性 Fields 数据 对象 Execute 操作方法 15.1.3 Web环境操作环境操作SQL Server数据库数据库n一种是在Web服务器端提供中间件来连接Web服务器和数据库服务器,中间件负责管理Web服务器和数据库服务器之间的通信并提供应用程序服务 n另一种是把应用程序下载到客户端并在客户端直接访问数据库 目前Windows环境下访问Web数据库的技术主要有: (1)基于公共网关接口CGI的Web数据库访问技术 (2)基于服务器扩展的API的Web数据库访问技术(3)基于ODBC的Web数据库访问技术 (4)基于JDBC的Web数据库技术(5)基于ASP技术的Web数据库访问

12、技术 在ASP中使用ADO组件访问后台数据库的具体步骤 :(1)定义数据源在Web服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。(2)使用ADO组件查询Web数据库: 建 立 数 据 库 连 接 并 打 开 目 标 数 据 库 : 调 用Server.CreateObject方法取得ADODB.Connection”的实例,再使用Open方法打开数据库:nconn = Server.CreateObject(“ADODB.Connection”)nconn.Open(“HT”) 指定要执行的SQL命令 n可对数据库操作,如查询,

13、修改,删除等,这些都是通过SQL指令来完成。如要在数据表signaltab中查询代码中含有“X”的记录:sqlStr = “select * from signaltab where code like %X%”rs = conn.Execute(sqlStr) n使用RecordSet属性和方法,并显示结果rs = Server.CreateObject(“ADODB.RecordSet”)rs.Open(sqlStr,conn,1,A) / A=1读取, A=3 新增、修改、删除 .rs.close(): 关闭连接。 在在RecordSet组件中常用的属性和方法:组件中常用的属性和方法:n

14、rs.Fields.Count: RecordSet对象的字段数。nrs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1nrs(i): 第i个字段的数据,i为0至rs.Fields.Count-1nrs(字段名): 指定字段的数据。nrs.Record.Count:游标中的数据记录总数。nrs.EOF: 是否最后一条记录。nrs.MoveFirst: 指向第一条记录。nrs.MoveLast: 指向最后一条记录。 在在RecordSet组件中常用的属性和方法:组件中常用的属性和方法:nrs.MovePrev: 指向上一条记录。nrs.MoveNext: 指向下一

15、条记录。nrs.GetRows: 将数据放入数组中。nrs.Properties.Count:ADO的ResultSet或Connection的属性个数。nrs.Properties(item).Name:ADO的ResultSet或Connection名称。nrs.Properties: ADO的ResultSet或Connection的值。关闭数据库nconn.close()15.2 开放式数据库开发开放式数据库开发 n15.2.1 ODBC及其接口编程 n15.2.2 ADO数据库接口介绍 15.2.1 ODBC及其接口编程ODBC由纵向4部分构成,其主要功能如下:nODBC数据库应用程

16、序:用宿主语言和ODBC函数编写的应用程序用于访问数据库。可执行以下任务:请求与数据源的连接和会话(SQLConnect);向数据源发送SQL请求(SQLExecDirct或SQLExecute);对SQL请求的结果定义存储区和数据格式;请求结果;处理错误;如果需要,把结果返回给用户;对事务进行控制,请求执行或回退操作(SQLTransact);终止对数据源的连接(SQLDisconnect)。nODBC驱动程序管理器:驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,为应用程序加载、调用和卸载DB驱动程序,是ODBC中最重要的部件。nODBC 数据库驱

17、动程序:是一些DLL,提供了ODBC和数据库之间的接口。处理ODBC函数,向数据源提交用户请求执行的SQL语句。n数据源:是DB驱动程序与DBS之间连接的命名。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象 。15.2.2 ADO数据库接口介绍 Connection对象接口 Connection对象的属性列表属性属性说明说明CommandTimeOut设置执行Execute方法的逾期时间,以秒为单位,默认值为30秒,也可以调整,如objConn.CommandTimeOut = 60ConnectionString描述数据库的连接方式Connection

18、TimeOut设置Connection对象连接数据库的逾期时间,以秒为单位,默认值为15秒,默认情况下,若Connection对象无法连接数据库,则返回失败CursorLocation设置或返回光标提供者的位置,若CursorLocation的值设为2(adUseServer),表示使用服务器端光标(默认);若CursorLocation的值设为3(adUseClient),表示使用浏览器端光标State返回数据库的连接状态,是打开还是关闭Version返回ADO函数的版本号 Connection对象接口Connection对象的方法列表方法方法说明说明Open打开一个数据库连

19、接Close关闭一个数据库连接Execute对表进行SQL查询等操作Begin Trans初始化一个存取操作CommitTrans将存取操作(Transaction)所做出的改变存储至数据库RollbackTrans复原存取操作所做出的改变 Command对象接口对象接口 Command对象的属性列表属性属性说明说明ActiveConnection指明用来进行SQL语句的数据库连接CommandText指明表的名称或SQL语句CommandType指明Command对象的类型,若CommandText为表名,则该属性必须设置为adCmdTable,否则不用设置Command对象

20、提供Execute方法,用于执行由CommandText属性指定的SQL语句、存储过程、查询等。 Recordset对象接口 Recordset对象的属性列表属性属性说明说明CursorType指出Recordset对象中使用的光标类型,有4种光标:前向光标、键集光标、动态光标和静态光标CursorLocation设置或返回光标的位置,若CursorLocation的值为2(adUseServer),表示使用服务器端光标(默认);若CursorLocation的值为3(adUseClient),表示使用浏览器光标。LockType指定在编辑过程中对记录的锁定类型,同样也有4种锁

21、定类型:adLockReadOnly、adLockPerssimistic、adLockOptimistic和adLockBatchOptimsticFilter从Recordset对象中筛选记录MaxRecords可以返回的最多记录条数BOF指明当前记录指针是否在首记录之前,若是,则返回True;否则返回FalseEOF指明当前记录指针是否在尾记录之后,若是,则返回True;否则返回FalseBookMark将指针设置在某一条记录上,类似书签的功能RecordCount返回Recordset对象中的记录数AbsolutePage当Recordset对象设有分页时,返回当前的页码Records

22、et对象的属性列表PageSize当Recordset对象设有分页时,该属性定义一页中包含的记录数PageCount返回Recordset对象中包含的数据页数AbsolutePosition当前记录的绝对位置ActiveConnection指明用来进行SQL语句的数据库连接Source设置用来建立Recordset对象的SQL来源State返回Recordset对象的状态:打开/关闭Status返回对记录的处理是否成功:成功/失败属性属性说明说明Recordset对象的方法 Recordset对象的方法列表方法方法说明说明Open打开一个Recordset对象Close关闭一个Recordset对象,但系统并没有释放该对象占用的内存空间AddNew为可更新的Recordset对象增加一个新记录Clone复制某个已存在的Recordset对象Delete删除Recordset对象中当前指针所指到的记录Update保存对当前Recordset对象记录的更新CancelUpdate取消对当前Recordset对象中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论