资源预览内容
第1页 / 共81页
第2页 / 共81页
第3页 / 共81页
第4页 / 共81页
第5页 / 共81页
第6页 / 共81页
第7页 / 共81页
第8页 / 共81页
第9页 / 共81页
第10页 / 共81页
亲,该文档总共81页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第七章 Web数据库设计第七章第七章 Web数据库设计数据库设计本章本章要点:要点:vWeb数据库概述数据库概述vWeb数据库产品的选择数据库产品的选择vWeb数据库的连接数据库的连接vWeb数据库的管理数据库的管理1第七章 Web数据库设计一、一、Web数据库概述数据库概述1、Web数据库的产生数据库的产生vWeb数据库的产生数据库的产生随着随着Internet的进一步发展,的进一步发展,Web技术和数据技术和数据库技术结合的产物。库技术结合的产物。vWeb数据库的优点数据库的优点借用现成的浏览器软件,无需开发数据库前端借用现成的浏览器软件,无需开发数据库前端标准统一,开发过程简单标准统一,开发过程简单交叉平台支持交叉平台支持2第七章 Web数据库设计2、Web数据库系统的基本模型数据库系统的基本模型v早期早期Internet数据库系统数据库系统客户端浏览器Web服务器、数据库客户端浏览器Web服务器CGI、ODBC等中间件数据库服务器v多层结构的多层结构的Web数据库系统模型数据库系统模型3第七章 Web数据库设计3、数据库技术简介、数据库技术简介vCGI(Common Gateway Interface)是是Web服务器运行时外部程序的规范,按照服务器运行时外部程序的规范,按照CGI编写的程序可以扩展服务器的功能,完成服务器本编写的程序可以扩展服务器的功能,完成服务器本身不能完成的工作,外部程序执行时可以生成身不能完成的工作,外部程序执行时可以生成HTML文档,并将文档返回文档,并将文档返回Web服务器。服务器。CGI程序的常用语言:程序的常用语言:Perl、C+、VB、DelphivCGI的缺点:的缺点:每个每个CGI程序应用是作为一个独立外部应用来运行程序应用是作为一个独立外部应用来运行的,与服务器上其他程序竞争处理器资源,这将导的,与服务器上其他程序竞争处理器资源,这将导致运行速度减慢;致运行速度减慢;不提供状态管理功能,浏览器每次请求都需要一个不提供状态管理功能,浏览器每次请求都需要一个连接的建立与释放过程,效率较低。连接的建立与释放过程,效率较低。4第七章 Web数据库设计vSAPI(Server Application Programming Interface )服务器端应用程序编程接口:与服务器端应用程序编程接口:与CGI功能相同,功能相同,也可用于实现扩展服务器功能。实际是一组用于也可用于实现扩展服务器功能。实际是一组用于完成特定功能的很复杂的函数、消息和结构完成特定功能的很复杂的函数、消息和结构 ,包含在一个扩展名为包含在一个扩展名为DLL的动态连接库文件中。的动态连接库文件中。与与CGI相比,性能上有了很大的提高,但开发需相比,性能上有了很大的提高,但开发需编程方面的专门知识。编程方面的专门知识。 vODBC(Open DataBase Connection )开放式数据库连接:是一个标准开放式数据库连接:是一个标准 SQL数据库数据库API,可以为多种关系数据库提供统一访问。可以为多种关系数据库提供统一访问。vJDBC(Java DataBase Connection )Java 数据库连接:与数据库连接:与ODBC功能相同,使得功能相同,使得Java程序与数据库连接更容易。程序与数据库连接更容易。5第七章 Web数据库设计vASP与与ADO(ActiveX Data Object)ADO:即:即ActiveX数据对象,数据对象,ADO提供了面向提供了面向OLE DB的的高级,简单的接口。(高级,简单的接口。(ASP中的中的Database Access Component组件中提供组件中提供ADO对象)对象)OLE DB提供了面向不同数据源的低级但高效的接口。提供了面向不同数据源的低级但高效的接口。ADO和和OLE DB都可以访问关系型(如表)和非关系型都可以访问关系型(如表)和非关系型(层次或流)的数据。(层次或流)的数据。ODBC是另一种被设计成专门面向关系型数据的低级但高是另一种被设计成专门面向关系型数据的低级但高效的接口。效的接口。ADO 在客户端或中间层应用程序和低级的在客户端或中间层应用程序和低级的OLE DB 接口接口之间提供了一个抽象层。之间提供了一个抽象层。ADO 利用一个小的自动化对象利用一个小的自动化对象集来提供一个简单而有效的访问集来提供一个简单而有效的访问OLE DB的接口。这个接的接口。这个接口使口使ADO成为高级语言使用者的首选,例如成为高级语言使用者的首选,例如VISUAL BASIC和和VBSCRIPT,使用者不需要通过学习复杂的使用者不需要通过学习复杂的COM和和OLE DB知识来访问数据。知识来访问数据。ADO的主要优点是易用、高速、占用内存和磁盘空间少,的主要优点是易用、高速、占用内存和磁盘空间少,所以非常适合于作为服务器端的数据库访问技术。所以非常适合于作为服务器端的数据库访问技术。6第七章 Web数据库设计ADO工作原理工作原理 ADOOLE DBOLE DB的ODBC驱动程序ODBCODBC驱动程序OLE DB的数据库驱动程序数据库7第七章 Web数据库设计二、二、Web数据库产品的选择数据库产品的选择1、My SQL数据库系统数据库系统vMySQL是一个小巧灵珑的数据库服务器软件,对于是一个小巧灵珑的数据库服务器软件,对于中、小型应用系统是非常理想的。除了支持标准的中、小型应用系统是非常理想的。除了支持标准的SQL语句外,最重要的是,它还支持多种平台,而语句外,最重要的是,它还支持多种平台,而在在Unix/Linux系统上,系统上,MySQL支持多线程运行方支持多线程运行方式,从而能获得相当好的性能。它和前两个软件一式,从而能获得相当好的性能。它和前两个软件一样,是属于开放源代码软。样,是属于开放源代码软。vMySQL的功能特点如下:的功能特点如下:可以同时处理几乎不限数量的用户;可以同时处理几乎不限数量的用户;处理多达处理多达50,000,000以上的记录;以上的记录;命令执行速度快,也许是现今最快的;命令执行速度快,也许是现今最快的;简单有效的用户特权系统。简单有效的用户特权系统。v免费自由软件,对于小型应用系统非常理想免费自由软件,对于小型应用系统非常理想.8第七章 Web数据库设计2、Oracle数据库系统数据库系统vOracle公司公司1979年推出的基于年推出的基于SQL的关系数据库管理系统。主的关系数据库管理系统。主要包括数据库服务器、开发工具和连接产品三类。要包括数据库服务器、开发工具和连接产品三类。v特点:特点:兼容性:兼容性:Oracle产品采用标准产品采用标准SQL,并经过美国国家标准技术所并经过美国国家标准技术所(NIST)测试。与测试。与IBM SQL/DS,DB2,INGRES,IDMS/R等等兼容。兼容。可移植性:可移植性:Oracle的产品可运行于很宽范围的硬件与操作系统平的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在台上。可以安装在70种以上不同的大、中、小型机上;可在种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、WINDOWS等多种操作系统下工作。等多种操作系统下工作。可联结性:能与多种通讯网络相连,支持各种协议(可联结性:能与多种通讯网络相连,支持各种协议(TCP/IP、DECnet、LU6.2等)。等)。高生产率:提供了多种开发工具,能极大的方便用户进行进一步的高生产率:提供了多种开发工具,能极大的方便用户进行进一步的开发。开发。开放性:开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率良好的兼容性、可移植性、可连接性和高生产率是是Oracle RDBMS具有良好的开放性。具有良好的开放性。v适用于大型、中型和微型计算机的关系数据库管理系统,适用于大型、中型和微型计算机的关系数据库管理系统, 9第七章 Web数据库设计3、SQL Server数据库系统数据库系统vSQL Server是由是由Microsoft开发和推广的开发和推广的关系数据库管理系统(关系数据库管理系统(DBMS),它最初是由它最初是由Microsoft、Sybase和和Ashton-Tate三家三家公司共同开发的,并于公司共同开发的,并于1988年推出了第一年推出了第一个个OS/2版本。版本。 SQL Server近年来不断更近年来不断更新版本,新版本,1996年,年,Microsoft 推出了推出了SQL Server 6.5版本;版本;1998年,年,SQL Server 7.0版本和用户见面;版本和用户见面;SQL Server 2000是是Microsoft公司于公司于2000年推出的最新版本。年推出的最新版本。10第七章 Web数据库设计特点:特点:v真正的客户机真正的客户机/服务器体系结构。服务器体系结构。v图形化用户界面,使系统管理和数据库管理更加直观、简单。图形化用户界面,使系统管理和数据库管理更加直观、简单。v丰丰富富的的编编程程接接口口工工具具,为为用用户户进进行行程程序序设设计计提提供供了了更更大大的的选选择余地。择余地。vSQL Server与与Windows NT完完全全集集成成,利利用用了了NT的的许许多多功功能能,如如发发送送和和接接受受消消息息,管管理理登登录录安安全全性性等等。SQL Server也可以很好地与也可以很好地与Microsoft BackOffice产品集成。产品集成。v具具有有很很好好的的伸伸缩缩性性,可可跨跨越越从从运运行行Windows 95/98的的膝膝上上型型电电脑脑到到运运行行Windows 2000的的大大型型多多处处理理器器等等多多种种平平台台使用。使用。v对对Web技技术术的的支支持持,使使用用户户能能够够很很容容易易地地将将数数据据库库中中的的数数据据发布到发布到Web页面上。页面上。 vSQL Server提提供供数数据据仓仓库库功功能能,这这个个功功能能只只在在Oracle和和其其他更昂贵的他更昂贵的DBMS中才有。中才有。11第七章 Web数据库设计4、DB2数据库系统数据库系统vDB2是是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, AIX, HP-UX, SUN Solaris等操作系统。等操作系统。 v它有多种不同的版本,如:它有多种不同的版本,如:DB2工作组版、工作组版、DB2企企业版、业版、DB2个人版和个人版和DB2企业扩展版等,这些产品企业扩展版等,这些产品基本的数据管理功能是一样的,区别在于支持远程基本的数据管理功能是一样的,区别在于支持远程客户能力和分布式处理能力。客户能力和分布式处理能力。 12第七章 Web数据库设计特点:特点:v支持面向对象的编程:支持面向对象的编程:DB2支持复杂的数据结构,支持复杂的数据结构,如无结构文本对象,可以对无结构文本对象进行布如无结构文本对象,可以对无结构文本对象进行布尔匹配、最接近匹配和任意匹配等搜索。可以建立尔匹配、最接近匹配和任意匹配等搜索。可以建立用户数据类型和用户自定义函数。用户数据类型和用户自定义函数。v支持多媒体应用程序:支持多媒体应用程序:DB2支持大二分对象支持大二分对象(BLOB),),允许在数据库中存取二进制大对象和文允许在数据库中存取二进制大对象和文本大对象。其中,二进制大对象可以用来存储多媒本大对象。其中,二进制大对象可以用来存储多媒体对象。体对象。v备份和恢复能力备份和恢复能力v支持存储过程和触发器,用户可以在建表时显示的支持存储过程和触发器,用户可以在建表时显示的定义复杂的完整性规则定义复杂的完整性规则v支持递归支持递归SQL查询查询v支持异构分布式数据库访问支持异构分布式数据库访问v支持数据复制支持数据复制13第七章 Web数据库设计三三、SQL Server与与Access数据库系统数据库系统qSQL Server 2000vSQL Server 2000的版本的版本企业版、标准版:适用的操作系统企业版、标准版:适用的操作系统Windows NT Server 4.0加加P5Windows 2000 Server个人版:个人版:Windows Me、Windows 95/98Windows NT 4.0 加加SP5Windows 2000所有版本所有版本 v安装安装SQL Server 2000的硬件要求的硬件要求CPU:Intel Pentium 166MHz内存:企业版内存:企业版64M,其他版其他版32M14第七章 Web数据库设计15第七章 Web数据库设计企业管理器企业管理器16第七章 Web数据库设计v数据库的创建:数据库的创建:17第七章 Web数据库设计v新建表新建表18第七章 Web数据库设计19第七章 Web数据库设计v数据类型介绍数据类型介绍字符型数据:字符型数据:Varchar,最大可存最大可存255个字符个字符文本型数据:文本型数据:Text,最大可达最大可达20亿个字符亿个字符数据值数据:数据值数据:Int(整型)、整型)、Numeric(实数)实数)日期和时间数据:日期和时间数据:Datetime逻辑值数据:逻辑值数据:Bit20第七章 Web数据库设计v查询与添加删除记录查询与添加删除记录21第七章 Web数据库设计22第七章 Web数据库设计备份与恢复数据库23第七章 Web数据库设计24第七章 Web数据库设计25第七章 Web数据库设计26第七章 Web数据库设计查询分析器的使用查询分析器的使用27第七章 Web数据库设计28第七章 Web数据库设计qAccess数据库的创建数据库的创建v启动:开始启动:开始程序程序OFFICEACCESS29第七章 Web数据库设计创建表创建表30第七章 Web数据库设计31第七章 Web数据库设计v查询与添加记录:双击表名查询与添加记录:双击表名v给给Access数据库设置密码数据库设置密码启动启动Access,选择选择“文件文件/打开打开”32第七章 Web数据库设计33第七章 Web数据库设计v工具工具/安全安全/设置数据库密码设置数据库密码34第七章 Web数据库设计四四、在、在ASP中创建数据库连接中创建数据库连接q动态动态Web站点的构成站点的构成vWindows NT +IIS + SQL ServervWindows 98 + PWS + Access(Excel)q通过通过ADO访问数据库访问数据库v与与File Access文件访问组件文件访问组件中中文件对象文件对象类类似,似,ADO是是数据库访问组件(数据库访问组件(Database Access Component)中的对象,使用之中的对象,使用之前应先创建该对象。前应先创建该对象。35第七章 Web数据库设计对象名对象名信息信息内容内容Connection 对象标识对象标识ADODB.Connection对应文件对应文件MSADO15.DLLRecordset对象标识对象标识ADODB.Recordset对应文件对应文件MSADO15.DLLCommand对象标识对象标识ADODB.Command对应文件对应文件MSADO15.DLL主要包含三种类型的对象主要包含三种类型的对象:36第七章 Web数据库设计ADO存取数据库的工作原理存取数据库的工作原理ADO对象ASP程序应用程序应用程序Excel驱动程序Access驱动程序SQL Server驱动程序Excel数据库Access数据库SQL Server数据库ODBC驱动程序驱动程序37第七章 Web数据库设计q在在哪里查看本机的哪里查看本机的ODBC驱动程序驱动程序vWindows98:控制面板控制面板ODBC数据源数据源驱动程驱动程序序vWindows Server:控制面板控制面板管理工具管理工具ODBC数据源数据源驱动程序驱动程序q安装新版安装新版ODBC驱动程序驱动程序v方法方法1:安装相应的数据库:安装相应的数据库v方法方法2:下载程序,单独安装:下载程序,单独安装q设置设置ODBC驱动程序打开的数据库(驱动程序打开的数据库(DSN数据源名)数据源名)v控制面板控制面板ODBC数据源数据源驱动程序驱动程序38第七章 Web数据库设计39第七章 Web数据库设计用户用户DSN(用户数据源名):本地用户使用用户数据源名):本地用户使用系统系统DSN(系统数据源名):所有用户使用系统数据源名):所有用户使用文件文件DSN(文件数据源名):由文件打开源文件数据源名):由文件打开源v选择系统选择系统DSN添加,选择驱动程序添加,选择驱动程序40第七章 Web数据库设计v设置设置ODBC驱动程序打开的数据库名,输入驱动程序打开的数据库名,输入数据源名,单击数据源名,单击“选择选择”按钮。按钮。41第七章 Web数据库设计在在对话框中选择相应数据库对话框中选择相应数据库选择数据库后的界面选择数据库后的界面42第七章 Web数据库设计v完成后完成后多了多了一个数据源一个数据源43第七章 Web数据库设计q利用利用Connection对象建立数据库连接对象建立数据库连接1、创建、创建Connection链接对象链接对象2、利用利用Connection对象的对象的Open方法打开数据源方法打开数据源(DSN)3、利用利用Connection对象的对象的Execute执行执行SQL语句语句cn.Execute “insert into (学号,姓名学号,姓名) values (85031,孙宾孙宾)”完整的例子完整的例子新的对象名新的对象名调用调用Server对象的对象的CreateObject方法创建新对象方法创建新对象创建的创建的ADO对象标识对象标识44第七章 Web数据库设计上述第二步中的上述第二步中的cn.open “DSN=dbname”也可改为如下方法:也可改为如下方法:q利用利用ASP直接指定数据源的方法直接指定数据源的方法(不需到控制面板中的(不需到控制面板中的ODBC中设置数据源)中设置数据源)vAccess数据库的数据源直接设置格式数据库的数据源直接设置格式“Driver=Microsoft Access Driver (*.mdb);dbq=数据库文件名(包含路径)数据库文件名(包含路径);UID=用户名用户名;PWD=用户密码用户密码”例:例:cn.open “Driver=Microsoft Access Driver (*.mdb);dbq=e:mywebsample.mdb”45第七章 Web数据库设计vSQL Server数据库的数据源直接设置格式数据库的数据源直接设置格式“Driver=SQL Server;Database=数据库数据库文件名(包含路径)文件名(包含路径);Server=服务器名服务器名;UID=用户名用户名;PWD=用户密码用户密码”例:例:cn.open “Driver=SQL Server;Database=datatest;Server=sqlserver;UID=sa;PWD=”vExcel数据库的数据源直接设置格式数据库的数据源直接设置格式“Driver=Microsoft Excel Driver (*.xls);dbq=数据库文件名(包含路径)数据库文件名(包含路径)”例:例:cn.open “Driver=Microsoft Excel Driver (*.xls);dbq=e:mywebex1.xls”46第七章 Web数据库设计五、五、SQL语言简介语言简介qSQL(结构化查询语言)结构化查询语言)v一套用于对关系数据库中表的创建、关系的一套用于对关系数据库中表的创建、关系的设立及记录的增删改等操作的数据库应用程设立及记录的增删改等操作的数据库应用程序语言。已成为通用的标准数据库语言。序语言。已成为通用的标准数据库语言。v特点:特点:面向表而不是面向记录的查询面向表而不是面向记录的查询接近自然语言,简单易用接近自然语言,简单易用兼容性和可移植性兼容性和可移植性47第七章 Web数据库设计qSQL语言的运行方式:语言的运行方式:v可在可在SQL Server中的查询分析器中中的查询分析器中v在在Access中创建一个空中创建一个空“查询查询”:右键:右键SQL视视图图v也可编写数据库操作程序,如在也可编写数据库操作程序,如在ASP中中q查询数据库中已有的数据查询数据库中已有的数据vSelect查询命令基本格式:查询命令基本格式:Select 字段列表字段列表 from 表名表名 Where 条件条件Order By 字段列表字段列表Desc48第七章 Web数据库设计v查询特定字段记录查询特定字段记录Select 学号,姓名,语文学号,姓名,语文 from 成绩表成绩表v查询符合条件的记录查询符合条件的记录Select * from Where 语文语文60 or 数学数学60 Order By 语文语文Select * from Where 语文语文60 Order By 语文语文 DescvWhere条件式的变化条件式的变化字符串数据:字符串数据: Select * from Where 姓名姓名=王维全王维全 模糊查询:万用字符模糊查询:万用字符%使用使用 Select * from Where 姓名 Like 王% Select * from Where 姓名 Like 王%49第七章 Web数据库设计q向向数据库中增加记录数据库中增加记录v格式:格式:Insert Into 表名表名 (字段表字段表) Values (字段值表)字段值表)Insert Into 成绩单成绩单 (学号,姓名,语文(学号,姓名,语文) Values (1001,李江李江,80)q修改数据修改数据v格式:格式:Update 表表名名 set 字段字段1=值值1,字段字段2=值值2 Where 条件条件Update 成绩表成绩表 set 数学数学=数学数学+10 where 姓名姓名 like “王王%”q删除记录删除记录v格式:格式:Delete from 表表名名 where 条件式条件式Delete from 成绩表成绩表 where 学号学号=“1002”省略表示所有字段省略表示所有字段50第七章 Web数据库设计七、使用七、使用Connection对象对象qADO提供的提供的connection对象不仅可以用于建对象不仅可以用于建立应用程序与数据库之间的连接,而且利用它立应用程序与数据库之间的连接,而且利用它的属性和方法还可以直接进行有关数据库操作的属性和方法还可以直接进行有关数据库操作qConnection对象的属性对象的属性vVersion:读取目前使用的读取目前使用的ADO版本;版本;vMode:设定是否可更改目前的数据库;如设定是否可更改目前的数据库;如1只读;只读;2只写只写qConnection对象的方法对象的方法vopen方法:用来建立与数据库来源的链接方法:用来建立与数据库来源的链接vClose方法:用来关闭目前被打开的链接对象方法:用来关闭目前被打开的链接对象vExecute方法:用来执行所设定的操作。方法:用来执行所设定的操作。51第七章 Web数据库设计q向数据表插入记录向数据表插入记录52第七章 Web数据库设计q更新数据表中的记录更新数据表中的记录53第七章 Web数据库设计q删除数据表中的记录删除数据表中的记录54第七章 Web数据库设计八、使用八、使用RecordSet对象对象q如上,单独使用如上,单独使用connection对象不能在浏览器对象不能在浏览器中看到执行的结果,利用记录集对象中看到执行的结果,利用记录集对象recordset对象可以更加方便地进行数据库记录的查询添加对象可以更加方便地进行数据库记录的查询添加删除与修改等操作。删除与修改等操作。qRecordset对象的属性对象的属性vRs.eof:记录指针是否指向记录集末尾(逻辑值)。记录指针是否指向记录集末尾(逻辑值)。vRs.bof:记录指针是否指向记录集开始(逻辑值)记录指针是否指向记录集开始(逻辑值)vRs.RecordCount:记录集中记录总数记录集中记录总数vRs.PageSize:当前记录集总页数当前记录集总页数vRs.PageCount:当前记录集总页数当前记录集总页数vRs.AbsolutePage:当前记录位置的绝对页号当前记录位置的绝对页号vRs.AbsolutePosition:当前记录所在的绝对位置当前记录所在的绝对位置55第七章 Web数据库设计qRecordset对象的方法对象的方法vRs.open:打开记录集合方法打开记录集合方法vRs.close:关闭关闭Recordset对象:对象:vRs.MoveNext:将记录指针移到下一条将记录指针移到下一条vRs.MovePrevious:将记录指针移到上一条将记录指针移到上一条vRs.MoveFirst:将记录指针移到第一条将记录指针移到第一条vRs.MoveLast:将记录指针移到最后一条将记录指针移到最后一条vRs.Addnew:增加一条空的记录增加一条空的记录vRs.Delete:删除当前记录或记录组删除当前记录或记录组vRs.Update:更新当前所做的修改更新当前所做的修改56第七章 Web数据库设计qRecordset记录集类型参数说明记录集类型参数说明vAdOpenForwaedOnly(=0):只读,当前数据记录只能向下只读,当前数据记录只能向下移动;移动;vAdOpenStatic(=3):只读,当前数据记录可自由移动;只读,当前数据记录可自由移动;vAdOpenKeyset(=1):可读写,当前数据记录可自由移动;可读写,当前数据记录可自由移动;vAdOpenDynamic(=2):可读写,当前数据记录可自由移动,可读写,当前数据记录可自由移动,多人共享数据库时可看到其他用户新增的数据记录多人共享数据库时可看到其他用户新增的数据记录q记录锁定类型参数说明:记录锁定类型参数说明:vadLockReadOnly(=1):默认值,只读默认值,只读vadLockPessimistic(=2)、保守式记录锁定,编辑时即锁定保守式记录锁定,编辑时即锁定vadLockOptimistic(=3)、开放式锁定,在执行开放式锁定,在执行Update操作操作时锁定时锁定vadLockBatchOptimistic(=4)、开放式批更新开放式批更新57第七章 Web数据库设计q在创建在创建Recordset对象的同时直接创建对象的同时直接创建Connection对象对象58第七章 Web数据库设计qRecordset对象的应用对象的应用vField集合集合(对应记录集中的某列对应记录集中的某列)的属性的属性Rs.Fields(i).value=Rs(i)= Rs(“字段名字段名”)读取当前数据记录的第读取当前数据记录的第I个字段个字段内容内容,Rs.Fields(i).Name=Rs(i).Name读取当前记录的第读取当前记录的第I个个字段名字段名vFields集合集合(对应记录集中所有列对应记录集中所有列)的属性的属性Rs.Fields.Count读取字段的数目读取字段的数目59第七章 Web数据库设计实例实例1:查询并显示数据库中记录:查询并显示数据库中记录:P124姓名:姓名:工资:工资:年龄:年龄:60第七章 Web数据库设计实例实例2:显示数据表中字段名(紧跟上面程序):显示数据表中字段名(紧跟上面程序)%For i=0 to 3 Response.write “” & rs(i).namenext%改进:改进:For I=0 to Rs.fields.count-1我如何知道数据表中我如何知道数据表中有多少个字段呢有多少个字段呢61第七章 Web数据库设计实例实例2:显示记录集中第一条记录内容:显示记录集中第一条记录内容% For i=0 to Fields.Count-1 Response.write “” & Rs(i).name & “=”& rs(i)Next %62第七章 Web数据库设计考虑:如何将记录显示在表格中(如下表所示考虑:如何将记录显示在表格中(如下表所示 )姓名姓名年龄年龄性别性别成绩成绩张三张三21男男8763第七章 Web数据库设计q利用循环显示记录集中所有记录利用循环显示记录集中所有记录姓名:姓名:工资:工资:年龄:年龄:改进:改进:For i=0 to Fields.Count-1 Response.write “” & Rs(i).name & “:”& rs(i)Next 64第七章 Web数据库设计% For I=0 To Rs.fields.count-1 Response.write “”& rs(i).name & “”Next %综合应用:将数据表以表格形式显示综合应用:将数据表以表格形式显示65第七章 Web数据库设计%Rs.MoveFirstWhile Not Rs.eof response.write “” For I=0 to Rs.fields.count-1 responsee.write “” & rs(i) & “” Next Response.write “” Rs.movenextwend%66第七章 Web数据库设计实例实例4:删除记录:删除记录v利用利用connection和和recordset对象获取记录集后,对象获取记录集后,将欲删除的记录设为当前记录,执行以下语句将欲删除的记录设为当前记录,执行以下语句例:删除最后一条记录例:删除最后一条记录Rs.MoveLastRs.Deletev连续删除第连续删除第12条记录条记录67第七章 Web数据库设计实例实例5:修改数据记录:修改数据记录v首先将欲修改的记录设置为当前记录,然后直接给首先将欲修改的记录设置为当前记录,然后直接给字段赋值。字段赋值。注:以前语句只是将修改的数据写入了缓冲,只有在注:以前语句只是将修改的数据写入了缓冲,只有在以下两种情况下数据才真正写入数据库:以下两种情况下数据才真正写入数据库:v程序调用了程序调用了“Rs.update”语句语句v当前记录位置改变了,如程序调用当前记录位置改变了,如程序调用RS.MoveXXXX方法方法68第七章 Web数据库设计实例实例6:增加记录:增加记录首先增加一空记录,然后给空记录赋值首先增加一空记录,然后给空记录赋值69第七章 Web数据库设计q实例实例7:对数据进行筛选与排序:对数据进行筛选与排序:先看前面获得记录的语句先看前面获得记录的语句修改此处修改此处SQL语句语句70第七章 Web数据库设计q按按条件取得数据的条件取得数据的SQL语句语句基本句型:基本句型:Select from where 条件式条件式10”Rs.open SQL,cn,adopenkeyset%注意此处增加筛选条件71第七章 Web数据库设计给给记录按字段排序的记录按字段排序的SQL语句语句基本句型:基本句型:Select from order by 字段列表字段列表Select from order by 字段列表字段列表 desc如:如:72第七章 Web数据库设计q限定选取记录项数的限定选取记录项数的SQL语句语句v基本句型:基本句型:Select top N from 如:限定选取前如:限定选取前10条记录条记录SQL=“Select top 10 * from 成绩表成绩表“v在在SQL语句的语句的Where条件式中应用万用字条件式中应用万用字符符“like”如:如:Select * from 成绩表成绩表 Where 姓名姓名 like 王王%73第七章 Web数据库设计九、在客户端访问数据库九、在客户端访问数据库q在客户端向数据库添加数据在客户端向数据库添加数据q在客户端按条件查询数据库记录在客户端按条件查询数据库记录q在客户端删除数据库中记录在客户端删除数据库中记录q在客户端修改数据库记录在客户端修改数据库记录74第七章 Web数据库设计十、分页显示数据库记录十、分页显示数据库记录准备工作第准备工作第1步:连接数据库步:连接数据库准备工作第准备工作第2步:利用步:利用SQL语句返回记录集数据语句返回记录集数据准备工作第准备工作第3步:定义分页函数步:定义分页函数75第七章 Web数据库设计Sub ShowOnePage( rs, Page ) Response.Write Response.Write Response.WRITE 编号编号 For i=0 to rs.Fields.Count-1 Response.WRITE & rs.Fields(i).Name & Next Response.Write 76第七章 Web数据库设计rs.AbsolutePage = Page For iPage = 1 To rs.PageSize Response.Write RecNo = (Page - 1) * rs.PageSize + iPage Response.Write & RecNo & For i=0 to rs.Fields.Count-1 Response.WRITE & rs.Fields(i).Value & Next Response.Write rs.MoveNext If rs.EOF Then Exit For Next Response.Write End Sub77第七章 Web数据库设计q显示一页记录显示一页记录分页的技巧分页的技巧78第七章 Web数据库设计q显示一页记录显示一页记录Version 2 - 在在“地址地址”字段中输入页次字段中输入页次% rs.PageSize = 10 Page = CLng(Request(Page) If Page rs.PageCount Then Page = rs.PageCount ShowOnePage rs, Page %页次页次:/79第七章 Web数据库设计q显示导航链接显示导航链接 % Myself=Request.ServerVariables(PATH_INFO)Myself=Request.ServerVariables(PATH_INFO) rs.PageSize = 10 Page = CLng(Request(Page) If Page rs.PageCount Then Page = rs.PageCount ShowOnePage rs, Page % If Page 1 Then 如果不是位于第一页如果不是位于第一页 % A href=?Page=1第一页第一页 A href=?Page=上一页上一页% End IfIf Page rs.PageCount Then 如果不是位于最后一页如果不是位于最后一页 % A HREF=?Page=下一页下一页 A HREF=?Page=最后一页最后一页 页次页次:/ 80第七章 Web数据库设计q增加增加“输入页次输入页次”输入框输入框 增加增加“输入页次输入页次”分页浏览分页浏览% Myself=Request.ServerVariables(PATH_INFO)Myself=Request.ServerVariables(PATH_INFO) rs.PageSize = 10 Page = CLng(Request(Page) If Page rs.PageCount Then Page = rs.PageCount ShowOnePage rs, Page %FORM Action= Method=GET输入页次输入页次: 页次页次: / 81
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号