Web数据库设计.ppt_第1页
Web数据库设计.ppt_第2页
Web数据库设计.ppt_第3页
Web数据库设计.ppt_第4页
Web数据库设计.ppt_第5页
免费预览已结束,剩余76页可下载查看

下载本文档

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

文档简介

1、1,第七章 Web数据库设计,本章要点: Web数据库概述 Web数据库产品的选择 Web数据库的连接 Web数据库的管理,2,一、Web数据库概述,1、Web数据库的产生 Web数据库的产生 随着Internet的进一步发展,Web技术和数据库技术结合的产物。 Web数据库的优点 借用现成的浏览器软件,无需开发数据库前端 标准统一,开发过程简单 交叉平台支持,3,2、Web数据库系统的基本模型 早期Internet数据库系统,多层结构的Web数据库系统模型,4,3、数据库技术简介 CGI(Common Gateway Interface) 是Web服务器运行时外部程序的规范,按照CGI编写的

2、程序可以扩展服务器的功能,完成服务器本身不能完成的工作,外部程序执行时可以生成HTML文档,并将文档返回Web服务器。 CGI程序的常用语言:Perl、C+、VB、Delphi CGI的缺点: 每个CGI程序应用是作为一个独立外部应用来运行的,与服务器上其他程序竞争处理器资源,这将导致运行速度减慢; 不提供状态管理功能,浏览器每次请求都需要一个连接的建立与释放过程,效率较低。,5,SAPI(Server Application Programming Interface ) 服务器端应用程序编程接口:与CGI功能相同,也可用于实现扩展服务器功能。实际是一组用于完成特定功能的很复杂的函数、消息和

3、结构 ,包含在一个扩展名为DLL的动态连接库文件中。 与CGI相比,性能上有了很大的提高,但开发需编程方面的专门知识。 ODBC(Open DataBase Connection ) 开放式数据库连接:是一个标准 SQL数据库API,可以为多种关系数据库提供统一访问。 JDBC(Java DataBase Connection ) Java 数据库连接:与ODBC功能相同,使得Java程序与数据库连接更容易。,6,ASP与ADO(ActiveX Data Object) ADO:即ActiveX数据对象,ADO提供了面向OLE DB的高级,简单的接口。(ASP中的Database Access

4、 Component组件中提供ADO对象) OLE DB提供了面向不同数据源的低级但高效的接口。ADO和OLE DB都可以访问关系型(如表)和非关系型(层次或流)的数据。 ODBC是另一种被设计成专门面向关系型数据的低级但高效的接口。 ADO 在客户端或中间层应用程序和低级的OLE DB 接口之间提供了一个抽象层。ADO 利用一个小的自动化对象集来提供一个简单而有效的访问OLE DB的接口。这个接口使ADO成为高级语言使用者的首选,例如VISUAL BASIC和VBSCRIPT,使用者不需要通过学习复杂的COM和OLE DB知识来访问数据。 ADO的主要优点是易用、高速、占用内存和磁盘空间少,

5、所以非常适合于作为服务器端的数据库访问技术。,7,ADO工作原理,8,二、Web数据库产品的选择,1、My SQL数据库系统 MySQL是一个小巧灵珑的数据库服务器软件,对于中、小型应用系统是非常理想的。除了支持标准的SQL语句外,最重要的是,它还支持多种平台,而在Unix/Linux系统上,MySQL支持多线程运行方式,从而能获得相当好的性能。它和前两个软件一样,是属于开放源代码软。 MySQL的功能特点如下: 可以同时处理几乎不限数量的用户; 处理多达50,000,000以上的记录; 命令执行速度快,也许是现今最快的; 简单有效的用户特权系统。 免费自由软件,对于小型应用系统非常理想.,9

6、,2、Oracle数据库系统 Oracle公司1979年推出的基于SQL的关系数据库管理系统。主要包括数据库服务器、开发工具和连接产品三类。 特点: 兼容性:Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。与IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。 可移植性:Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在70种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、WINDOWS等多种操作系统下工作。 可联结性:能与多种通讯网络相连,支持各种协议(TCP/IP、DECnet、LU6.2等)。 高生产率:提供了多种开发工具

7、,能极大的方便用户进行进一步的开发。 开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率是Oracle RDBMS具有良好的开放性。 适用于大型、中型和微型计算机的关系数据库管理系统,,10,3、SQL Server数据库系统 SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。 SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server

8、7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。,11,特点: 真正的客户机/服务器体系结构。 图形化用户界面,使系统管理和数据库管理更加直观、简单。 丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。 SQL Server与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffice产品集成。 具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。 对W

9、eb技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。 SQL Server提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。,12,4、DB2数据库系统 DB2是IBM公司的产品,起源于System R和System R*。他支持从PC到UNIX,从中小型机到大型机;从IBM到非IBM(HP及SUN UNIX系统等)各种操作平台。他既可以在主机上以主/从方式独立运行,也可以在客户/服务器环境中运行。其中服务平台可以是OS/400,AIX,OS/2,HP-UNIX,SUN-Solaris等操作系统,客户机平台可以是OS/2或Windows, Dos, AI

10、X, HP-UX, SUN Solaris等操作系统。 它有多种不同的版本,如:DB2工作组版、DB2企业版、DB2个人版和DB2企业扩展版等,这些产品基本的数据管理功能是一样的,区别在于支持远程客户能力和分布式处理能力。,13,特点: 支持面向对象的编程:DB2支持复杂的数据结构,如无结构文本对象,可以对无结构文本对象进行布尔匹配、最接近匹配和任意匹配等搜索。可以建立用户数据类型和用户自定义函数。 支持多媒体应用程序:DB2支持大二分对象(BLOB),允许在数据库中存取二进制大对象和文本大对象。其中,二进制大对象可以用来存储多媒体对象。 备份和恢复能力 支持存储过程和触发器,用户可以在建表时

11、显示的定义复杂的完整性规则 支持递归SQL查询 支持异构分布式数据库访问 支持数据复制,14,三、SQL Server与Access数据库系统,SQL Server 2000 SQL Server 2000的版本 企业版、标准版:适用的操作系统Windows NT Server 4.0加P5Windows 2000 Server 个人版:Windows Me、Windows 95/98Windows NT 4.0 加SP5Windows 2000所有版本 安装SQL Server 2000的硬件要求 CPU:Intel Pentium 166MHz 内存:企业版64M,其他版32M,15,16

12、,企业管理器,17,数据库的创建:,18,新建表,19,20,数据类型介绍 字符型数据:Varchar,最大可存255个字符 文本型数据:Text,最大可达20亿个字符 数据值数据: Int(整型)、 Numeric(实数) 日期和时间数据:Datetime 逻辑值数据:Bit,21,查询与添加删除记录,22,23,备份与恢复数据库,24,25,26,27,查询分析器的使用,28,29,Access数据库的创建 启动:开始程序OFFICEACCESS,30,创建表,31,32,查询与添加记录:双击表名 给Access数据库设置密码 启动Access,选择“文件/打开”,33,34,工具/安全/

13、设置数据库密码,35,四、在ASP中创建数据库连接,动态Web站点的构成 Windows NT +IIS + SQL Server Windows 98 + PWS + Access(Excel) 通过ADO访问数据库 与File Access文件访问组件中文件对象类似,ADO是数据库访问组件(Database Access Component)中的对象,使用之前应先创建该对象。,36,主要包含三种类型的对象:,37,ADO存取数据库的工作原理,ADO对象,38,在哪里查看本机的ODBC驱动程序 Windows98:控制面板ODBC数据源驱动程序 Windows Server:控制面板管理工具

14、ODBC数据源驱动程序 安装新版ODBC驱动程序 方法1:安装相应的数据库 方法2:下载程序,单独安装 设置ODBC驱动程序打开的数据库(DSN数据源名) 控制面板ODBC数据源驱动程序,39,40,用户DSN(用户数据源名):本地用户使用 系统DSN(系统数据源名):所有用户使用 文件DSN(文件数据源名):由文件打开源 选择系统DSN添加,选择驱动程序,41,设置ODBC驱动程序打开的数据库名,输入数据源名,单击“选择”按钮。,42,在对话框中选择相应数据库,43,完成后,多了一个数据源,44,利用Connection对象建立数据库连接 1、创建Connection链接对象 2、利用Con

15、nection对象的Open方法打开数据源(DSN) 3、利用Connection对象的Execute执行SQL语句 cn.Execute “insert into (学号,姓名) values (85031,孙宾)” 完整的例子,新的对象名,调用Server对象的CreateObject方法创建新对象,创建的ADO对象标识,45,上述第二步中的 cn.open “DSN=dbname” 也可改为如下方法: 利用ASP直接指定数据源的方法(不需到控制面板中的ODBC中设置数据源) Access数据库的数据源直接设置格式 “Driver=Microsoft Access Driver (*.md

16、b);dbq=数据库文件名(包含路径);UID=用户名;PWD=用户密码” 例:cn.open “Driver=Microsoft Access Driver (*.mdb);dbq=e:mywebsample.mdb”,46,SQL Server数据库的数据源直接设置格式 “Driver=SQL Server;Database=数据库文件名(包含路径);Server=服务器名;UID=用户名;PWD=用户密码” 例:cn.open “Driver=SQL Server;Database=datatest;Server=sqlserver;UID=sa;PWD=” Excel数据库的数据源直接

17、设置格式 “Driver=Microsoft Excel Driver (*.xls);dbq=数据库文件名(包含路径)” 例:cn.open “Driver=Microsoft Excel Driver (*.xls);dbq=e:mywebex1.xls”,47,五、SQL语言简介,SQL(结构化查询语言) 一套用于对关系数据库中表的创建、关系的设立及记录的增删改等操作的数据库应用程序语言。已成为通用的标准数据库语言。 特点: 面向表而不是面向记录的查询 接近自然语言,简单易用 兼容性和可移植性,48,SQL语言的运行方式: 可在SQL Server中的查询分析器中 在Access中创建一

18、个空“查询”:右键SQL视图 也可编写数据库操作程序,如在ASP中 查询数据库中已有的数据 Select查询命令基本格式: Select 字段列表 from 表名 Where 条件 Order By 字段列表Desc,49,查询特定字段记录 Select 学号,姓名,语文 from 成绩表 查询符合条件的记录 Select * from Where 语文60 Order By 语文 Select * from Where 语文60 Order By 语文 Desc Where条件式的变化 字符串数据: Select * from Where 姓名=王维全 模糊查询:万用字符%使用 Select

19、 * from Where 姓名 Like 王% Select * from Where 姓名 Like 王%,50,向数据库中增加记录 格式:Insert Into 表名 (字段表) Values (字段值表) Insert Into 成绩单 (学号,姓名,语文) Values (1001,李江,80) 修改数据 格式:Update 表名 set 字段1=值1,字段2=值2 Where 条件 Update 成绩表 set 数学=数学+10 where 姓名 like “王%” 删除记录 格式:Delete from 表名 where 条件式 Delete from 成绩表 where 学号=

20、“1002”,省略表示所有字段,51,七、使用Connection对象,ADO提供的connection对象不仅可以用于建立应用程序与数据库之间的连接,而且利用它的属性和方法还可以直接进行有关数据库操作 Connection对象的属性 Version:读取目前使用的ADO版本; Mode:设定是否可更改目前的数据库;如1只读;2只写 Connection对象的方法 open方法:用来建立与数据库来源的链接 Close方法:用来关闭目前被打开的链接对象 Execute方法:用来执行所设定的操作。,52,向数据表插入记录 ,53,更新数据表中的记录 ,54,删除数据表中的记录 ,55,八、使用Re

21、cordSet对象,如上,单独使用connection对象不能在浏览器中看到执行的结果,利用记录集对象recordset对象可以更加方便地进行数据库记录的查询添加删除与修改等操作。 Recordset对象的属性 Rs.eof:记录指针是否指向记录集末尾(逻辑值)。 Rs.bof:记录指针是否指向记录集开始(逻辑值) Rs.RecordCount:记录集中记录总数 Rs.PageSize:当前记录集总页数 Rs.PageCount:当前记录集总页数 Rs.AbsolutePage:当前记录位置的绝对页号 Rs.AbsolutePosition:当前记录所在的绝对位置,56,Recordset对象

22、的方法 Rs.open:打开记录集合方法 Rs.close:关闭Recordset对象: Rs.MoveNext:将记录指针移到下一条 Rs.MovePrevious:将记录指针移到上一条 Rs.MoveFirst:将记录指针移到第一条 Rs.MoveLast:将记录指针移到最后一条 Rs.Addnew:增加一条空的记录 Rs.Delete:删除当前记录或记录组 Rs.Update:更新当前所做的修改,57,Recordset记录集类型参数说明 AdOpenForwaedOnly(=0):只读,当前数据记录只能向下移动; AdOpenStatic(=3):只读,当前数据记录可自由移动; AdO

23、penKeyset(=1):可读写,当前数据记录可自由移动; AdOpenDynamic(=2):可读写,当前数据记录可自由移动,多人共享数据库时可看到其他用户新增的数据记录 记录锁定类型参数说明: adLockReadOnly(=1):默认值,只读 adLockPessimistic(=2)、保守式记录锁定,编辑时即锁定 adLockOptimistic(=3)、开放式锁定,在执行Update操作时锁定 adLockBatchOptimistic(=4)、开放式批更新,58,在创建Recordset对象的同时直接创建Connection对象 ,59,Recordset对象的应用 Field集

24、合(对应记录集中的某列)的属性 Rs.Fields(i).value=Rs(i)= Rs(“字段名”) 读取当前数据记录的第I个字段内容, Rs.Fields(i).Name=Rs(i).Name 读取当前记录的第I个字段名 Fields集合(对应记录集中所有列)的属性 Rs.Fields.Count 读取字段的数目,60,实例1:查询并显示数据库中记录:P124 姓名: 工资: 年龄: ,61,实例2:显示数据表中字段名(紧跟上面程序) ” & rs(i).name next % ,改进:For I=0 to Rs.fields.count-1,我如何知道数据表中有多少个字段呢,62,实例2

25、:显示记录集中第一条记录内容 ” & Rs(i).name & “=”& rs(i) Next % ,63,考虑:如何将记录显示在表格中(如下表所示 ),64,利用循环显示记录集中所有记录 姓名: 工资: 年龄: ,65, ”& rs(i).name & “” Next % ,综合应用:将数据表以表格形式显示,66,” For I=0 to Rs.fields.count-1 responsee.write “” & rs(i) & “” Next Response.write “” Rs.movenext wend % ,67,实例4:删除记录 利用connection和recordset对

26、象获取记录集后,将欲删除的记录设为当前记录,执行以下语句 例:删除最后一条记录 Rs.MoveLast Rs.Delete 连续删除第12条记录 ,68,实例5:修改数据记录 首先将欲修改的记录设置为当前记录,然后直接给字段赋值。 注:以前语句只是将修改的数据写入了缓冲,只有在以下两种情况下数据才真正写入数据库: 程序调用了“Rs.update”语句 当前记录位置改变了,如程序调用RS.MoveXXXX方法,69,实例6:增加记录 首先增加一空记录,然后给空记录赋值 ,70,实例7:对数据进行筛选与排序: 先看前面获得记录的语句 ,修改此处SQL语句,71,按条件取得数据的SQL语句 基本句型

27、:Select from where 条件式 10” Rs.open SQL,cn,adopenkeyset %,注意此处增加筛选条件,72,给记录按字段排序的SQL语句 基本句型: Select from order by 字段列表 Select from order by 字段列表 desc 如: ,73,限定选取记录项数的SQL语句 基本句型:Select top N from 如:限定选取前10条记录 SQL=“Select top 10 * from 成绩表“ 在SQL语句的Where条件式中应用万用字符“like” 如:Select * from 成绩表 Where 姓名 like 王%,74,九、在客户端访问数据库,在客户端向数据库添加数据 在客户端按条件查询数据库记录 在客户端删除数据库中记录 在客户端修改数据库记录,75,十、分页显示数据库记录

温馨提示

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

评论

0/150

提交评论