Web数据库(精选12篇)
Web数据库 篇1
《WEB数据库应用》是电子商务专业的专业课, 该课程具有较强的实践性、综合性、应用性、逻辑性。在多年的教学中, 发现了一些问题, 同时也找到了一些改革措施。
1 课程教学中存在的问题
1.1 教材选择中存在的问题。
各院校所用教材主要采用SQL-SERVER数据库, 教材主要以理论为中心, 很少涉及到具体的应用, 学生在学习过程中很难深入理解数据库中的一些重要技术, 更谈不上如何从实践上去把握。部分教材虽然有改进, 用案例贯穿始终, 但原理与应用没有很好地衔接, 教材中涉及的案例连贯性不强, 不利于学生逻辑思维的形成。
1.2 学生学习积极性不高。
在目前的课堂教学中, 一般都有是以教师讲授为主, 没有充分发挥学生学习的主动性, 启发式教学没有得到充分运用, 学生主动学习的积极性不高。
1.3 学生动手能力差。
学生在上机实践过程中, 常感觉无从下手, 尤其是出现错误时, 不知道如何调试、修改, 影响了实践进程, 也使学生更缺乏兴趣, 动力能力无从提高。
1.4 学生在学习时缺乏思考和创新。
学生往往存在这样的问题, 老师讲什么, 就学什么。缺乏思考和举一反三的能力。而数据库的学习只有在掌握基本的方法之后, 再进行思考和创新, 才能真正内化并掌握。
1.5 对实践教学环节重视不够。
《WEB数据库应用》是一门实践性很强的计算机语言, 需要大量的实践教学来帮助学生理解课程内容, 进而达到学以致用的目的。然而目前实践教学存在目的不明确、内容缺乏针对性、考核方法不科学等弊端, 急待解决。
1.6 实践教学缺少项目化设计思想。
一个完整的数据库开发是项目化的合作开发, 但在当前的实践教学中可以看到, 从上机实验到课后作业, 几乎都是学生的个人行为, 这样就导致许多学生在工作中不懂得如何合作开发一个实用的数据库系统, 不能迅速适应工作需求。
1.7 实践教学考核方式存在弊端。
实践教学考核一般是依据学生提交的实习报告和数据库系统来评定等级, 这种方式难以避免学生间相互抄袭, 出现结果大同小异的现象。
2 改革措施
2.1 激发学生学习兴趣。
激发学生学习兴趣应该贯穿教学的始终。可以在期初给学生展示一些学生感兴趣的、与专业相关的应用软件, 让学生感觉到课程的实用性。
2.2 提高学生动手能力。
提高动手能力是实践教学的重点。教师可以通过多种方法让学生积极主动地通过操作提高动手能力。可
(上接320页) 能采用“任务驱动法”, 通过具体的任务来激励学生动手练习。通过讲解具体的案例, 让学生在实践中学到解决问题的办法。
2.3 激发学生的创造力。
教师不能单纯的把教材上的内容灌输给学生, 而是应该鼓励学生在掌握基本知识的基础上, 自己设计开发系统。不拘于细节知识, 开阔思路, 设计过程中如果遇到问题, 鼓励学生互相探讨、研究, 寻找解决办法。
2.4 学与用相结合。
在教学改革中, 教学指导思想的转变是教学改革的中心。以往教学中只注重语言的学习, 缺乏对学生应用语言能力的培养, 造成在后续课程中, 学生不会应用语言。对于这种情况, 必须坚持以用为中心, 学用结合, 把提高学生的能力、素质作为衡量教学水平的一个重要尺度。为了使学生在“懂”语言的基础上, 进一步会“用”语言, 在教学中加强这方面的指导, 让学生在学的过程中更多地得到应用语言能力的锻炼, 真正掌握语言, 达到预期目的。
2.5 采用案例教学法。
案例教学法本身就是一种综合性的教学方法, 它的目的就是培养学生综合运用所学知识解决实际问题的能力。针对在校学生接触实际比较少, 没有实际开发软件和工作经验的特点, 我们采取逐步引导的方式, 提高学生系统思维与惯性思维能力。针对一个案例, 从问题的提出、分析、方案的设计与实施, 到最终问题的解决, 给学生全面讲解解决问题的全过程, 然后教师提出相似的案例, 由学生当主角, 自己解决问题, 锻炼综合运用知识的能力。对于在设计过程中一些不足, 教师给予及时的纠正。这样学生不但在解决问题的过程中锻炼了能力, 更增加了学习的兴趣。
2.6 精选教材, 优化教学内容。
教师在教学过程中应选择项目化设计教材, 对教学内容作适当的安排。针对高职教学主要以应用为主的目标, 在课程教学中对理论部分只作必要的讲解, 把重点放在技术与应用部分。
2.7 加强教师自身业务能力。
计算机学科发展迅速, 教师应该不断学习充实自己的业务知识, 学习解决教学中所遇到的知识问题, 只有这样才能给予学生更多, 让学生学到更多知识, 提高应用能力。
2.8 建立一种有效的考核方式。
学生在课程实践结束后, 不仅要提交实习报告及成果, 还要对成果进行讲解, 教师有针对性地对系统中的关键设计问题提出疑问, 学生解答, 这些环节可以有效地避免学生在实践过程中的抄袭现象。教学过程是一个复杂的过程, 尽可能的因材施教, 让学生掌握更有用、有价值的知识是我们追求的目标。教师要勇于探索, 对教学模式大胆改革, 提升教学艺术, 挖掘学生潜能, 强化素质教育。改革是一个不断完善的渐进过程, 我们仍需不断地探索, 不断地总结教学经验, 使教学趋于完善。
爆破技术, 解决了该段路基单纯靠机械开挖成本[4]杨文才.爆破技术在公路路基施工中的应用[J].中国西部科技,
Web数据库 篇2
ASP技术可以简便易行地实现构建Web数据库的查询程序,它集简单与高效于一身,可以非常直观地开发出复杂的Web应用,基于ASP开发的《中国分类主题词表》Web数据库具有良好的交互式使用方式,将有助于它在中国各类图书馆、文献情报机构中普及使用,大大地提高图书分类的准确度与效率,对我国图书情报机构文献管理和图书情报服务的现代化具有深远意义。
1 《中国分类主题词表》电子化的必要性
我国分类主题一体化的发展趋势在很大程度上取决于《词表》的出版和使用。由于《词表》的广泛使用,推广了主题工作、提高了主题标引的质量,为文献标引工作提供了权威的标引依据。但是,随着科学技术的发展与社会的进步,面对先进的网络技术、计算机技术在图书馆广泛应用的前景,标引人员不仅要求《词表》能满足新学科、新技术、新主题文献标引的动态需要,还呼唤能实现各种文献信息的自动标引或智能标引,满足各种用户包括读者在内的文献信息检索需要,实现自动检索或智能检索。
实现自动标引的基础是用于标引的词表库。系统标引词表库是自动标引系统辅助标引人员寻找合适的分类标识、主题标识和标识间相互转换的依据。由于《词表》完成了分类法类目与主题词或主题词串的对应,使得文献分类标引和主题标引同步进行变得易于实现,因此《词表》为标引词库表的建立奠定了坚实的基础。
基于WEB数据库安全的访问技术 篇3
关键词:WEB数据库;ODBC;安全增强器
1引言
在网络发展的早期。由于用户对安全还不是很重视,原来数据库的结构是客户机ODBC-数据库服务器3层体系结构。随着现代网络技术的发展,网络服务器数据库安全越来越重要,为了提升网络数据库的安全,本文提出从客户机 -ODBC一安全增强器一数据库服务器这样的一个4层结构。使得所有使用ODBC访问接口的应用系统对数据库的访问操作都将首先被提交给安全增强器接受安全检查,只有检查通过后才能访问后台的RDBMS。考虑到目前在国内流行的RDBMS如Oracle等都仅只有C2级的安全,在安全增强系统中实现的安全模块只需提供强制访问控制(MAC)和B1级所要求的扩充审计功能,就可以将原来只具有C2级安全的数据库管理系统的安全性能增强到B1级,从而可以满足对数据安全要求较高领域的应用需要。由于对安全模块的操作需要有一个扩充的数据安全子语言,而标准的ODBC并不具备处理该语言的能力,因此需要对ODBC所使用的SOL语言进行适当的扩充,以增加对安全操作命令的处理能力。
2WEB数据库安全性的内容
WEB数据库的安全性包括:机密性、完整性和可用性,数据库在3个层次上的异构,客户机、服务器通过开放的网络环境,跨不同硬件和软件平台通信,数据库安全问题在异构环境下变得更加复杂。而且异构环境的系统具有可扩展性。能管理分布或联邦数据库环境,每个节点服务器还能自治实行集中式安全管理和访问控制,对自己创建的用户、规则、客体进行安全管理。如:由DBA或安全管理员执行本部门、本地区或整体的安全策略,授权特定的管理员管理各组应用程序、用户、规则和数据库。因此访问控制和安全管理尤为重要a异构环境的数据库安全策略有:全局范围的身份验证;全局的访问控制,以支持各类局部访问控制(自主和强制访问控制):全局完整性控制;网络安全管理,包括网络信息加密、网络入侵防护和检测等。
3WEB数据库的安全增强器基本原理
在当前,数据库应用系统和关系数据库管理系统(RDBMS)之间的交互—般都是采用典型的客户机,服务器(C/S)结构,通过ODBC(Open Database Connectivity)来进行的。其中应用系统和ODBC驱动程序管理器放在客户机上,提出对数据库访问的请求,而RDBMS放在后台服务器上,提供服务,ODBC通过网络传输负责这两者之间的访问命令和结果数据的交互。由此看出,如果能够截获应用系统通过ODBC发送到数据库服务器的访问命令,就可以在ODBC和第三方的RDBMS之间加入我们提供的安全模块,以达到增强数据库系统的安全功能的目的。目前的数据库系统具有3种标准形式的网络访问接口:ODBC接口、JDBC接口和专用接口,而目前大部分应用程序约90%以上均使用ODBC接口来连接后台数据库。
基于上述设计思想,一个通用RDBMS的安全增强器主要由3部分内容组成:
(1)ODBG接口:该接口是连接客户端软件与后台RDBMS的标准接口,通过网络传输负责维护这两者之间命令和数据的交互。
(2)安全模块:该模块实现强制访问控制检查及安全审计功能,ODBC将客户端应用的SQL访问请求传送到服务器端后,由安全模块负责对SQL语句执行安全检查,只有在主体和客体的安全级别符合规定的访问要求后才能进入RDBMS进行相应操作。同时安全模块还将负责此次访问的安全审计工作。
(3)与RDBMS的接口模块:该模块负责将经过安全检查的SQL语句转换成RDBMS的标准语句并进入数据库进行相应的访问操作。为了确保应用系统-ODBC-安全模块一数据库服务器访问通道的封闭,与RDBMS的接口模块采用的是后台数据库的非网络访问接口,并封闭其原有的网络访问接口。
4ODBC的结构及主要内容
ODBC的4个组成部分:应用程序、驱动程序管理器、驱动程序、数据源以及每部分的功能。ODBC驱动程序是Microsoft推出的访问数据库的统一接口。这个接口提供了最大限度的互操作性,每一种对应某种DBMS的拓扑结构,它们分别是一级驱动器、二级驱动器、三级及多级驱动器。一级驱动器可以说是一种单机结构,数据库和驱动器放在同一台机器中,其程序设计接口由文件I/O构成,如Access、Foxpro、dBase等。二级驱动器就是目前流行的客户/服务器系统,如Oracle、Sybase、SQL Serve等。三级驱动器就是在二级驱动器的客户和服务器之间增加一个网关服务器,而这个网关服务器可以与多个DBMS相连,而网关服务器将用户的请求加载适当的ODBC驱动器后发送到相应的数据库服务器上。考虑到目前的需要,在基于RDBMS的安全增强器中,ODBC的实现采用二级驱动器方式。
在基于RDBMS的安全增强器中,为了保证整个数据库系统的安全性,要求安全模块本身就构成一个安全子系统,即安全模块的操作命令也必须受到强制访问控制的检查和进行安全审计。这就要求OD8C能够处理数据安全子语言的访问命令,但是在ODBC的标准规范中。只有对标准SQL语句的操作,并没有包含任何有关B1级安全的命令函数,因此必须在ODBC许可的范围内对ODBC进行适当的扩展,以增加对数据安全子语言的处理能力。使得任何对安全模块的操作命令都必须经由ODBC发送到安全模块,以达到增强系统安全的目的。
为提供对安全模块的操作与管理,对标准ODBCSOL语言的语法成分进行了如下扩充:
(1)层次等级的创建与删除;
(2)范畴的创建与删除;
(3)客体的标识、修改、删除;
(4)代理的标识、修改,删除;
(5)主体的标识、修改、删除;
(6)特权的授予与回收;
(7)MAC的启动与关闭;
(8)安全信息浏览;
(9)设置安全管理员口令;
(10)审计的启动与关闭;
(11)安全审计选项的设置与撤消;
(12)审计报警的打开与关闭;
(13)审计信息的浏览与删除;
(14)设置审计员口令。
5ODBC的设计与实现
基于RDBMS的安全增强系统中的ODBC的实现采用目前比较常用的Cllent/Server体系结构,主要包括客户端和服务器端的实现。从ODBC要实现的函数的内容来看。不仅包括常见的数据定义和数据操纵命令,还包括安全操作命令和数据字典
访问命令,在数据库服务器端需要调用不同的数据库访问函数。
5.1客户端的设计与实现
客户端主要是根据ODBC V3.0的规范来提供一个标准统一的用户接口,使得具体的实现对用户来说是透明的。在客户端主要包括3个句柄:
(1)环境句柄HENV:为全程信息标识内存存储。包括有效链接句柄和当前活动连接句柄并维护有关环境的错误集:
(2)链接句柄HDBC:为特定链接的信息标识内存存储,每个链接句柄与环境句柄有关。存放本次链接的必要信息,包括网络连接的信息和维护有关连接的错误集:
(3)语句句柄HSTMT:为SQL语句信息标识内存存储。用于存放每次操作的相美信息,以及返回的结果集和有关语句的错误集。一个语句句柄必须与一个连接句柄相连,但一个连接句柄上可以有多个语句句柄。客户端就是通过这3个訇柄来维护用户的访问信息的。
5.2服务器端的设计与实现
在网络环境下,用户对数据库的访问量可能高于在单机环境下访问的几个数量级。而且在同一时刻会有多个用户对数据库进行访问,这就要求服务器端能够并发地处理用户的访问请求。在接口的具体实现中,我们借助于操作系统的多任务多线程的特性,以实现多用户的数据库并发访问操作。在数据库服务器启动后将首先产生一个主线程,通过它再创建其他的服务线程。服务器端在接收到一次连接请求后都派生出一个线程来处理这次连接中的所有操作。而数据库内部的并发控制由后台的RDBMS来负责维护。线程产生后,就开始监听网络,当它从网络上接收到请求时,首先进入语法分析模块,对于MAC管理语句和审计管理语句,将分别进入MAC管理模块和审计管理模块;对于SQL请求,则进入安全模块进行安全检查,如果安全检查不能通过,则进行相应的处理并返回错误,否则将调用RDBMS的API函数进行处理,并将执行的结果发回客户端。在同一时间内。服务器端可以派生出多个线程进行并发操作。
6ODBC在安全增强系统中的应用
利用上述ODBC研究成果。我们实现了一个基于Oracle数据库系统的安全增强系统,并利用该安全增强系统对我们自主实现的ODBC访问接口进行了功能测试和性能测试。
整个测试采用1999年江苏省的网上招生系统,该系统共定义了基表38个、视图30个、存储过程10个,测试数据量总共在40万条记录左右。在对ODBC的功能测试中一共选取了85个例子,分为两个部分:一是按照QDBC的标准对ODBC函数进行测试(70个例子);二是进行应用综合测试(15个例子)。测试用例共使用了61个ODBC函数,对所有ODBC v3.0调用函数都进行了测试,测试结果表明系统功能完全符合ODBCV3.0的要求。
我们利用Oracle数据库及其专用的ODBC访问接口进行了性能对比测试。首先利用Oracle数据库的专用ODBC访问接口直接访问Qracle数据库,然后再使用我们实现的ODBC接口通过安全增强系统访问O-racle数据库,记录在每次运行过程中,从应用程序发出一条SQL访问命令开始,一直到获取该次访问的执行结果所需的执行时间。在测试过程中共选取了15个应用例子,每个例子执行3次。经过测试使用安全增强器时整个系统的效率仅下降5%左右。
7小结
基于Web的数据库技术 篇4
1 传统的基于Web的数据库技术
在信息系统平台的发展过程中, Web数据库技术经历了CGI、服务器API、IDC、ADC四个不同的发展阶段。
1.1 CGI技术
CGI即通用网关接口, 是Web数据库最早的连接技术, 几乎是所有的Web服务器都支持CGI。它是一个Web服务器提供给信息数据服务器的接口, 在用户需要访问数据库的时候, CGI程序接收浏览器发送至Web服务器的信息, 经过处理之后, 再将处理的结果发送给Web服务器浏览器。通过对CGI程序的使用, 就可以允许用户采用各种程序语言去实现多种功能, 这种程序具有很好的跨平台操作性, 可以在绝大多数的操作系统中实现。但是, CGI程序在应用的过程中是以一个独立的外部应用来运行的, 在使用的过程中会与同时运行的其他程序抢占处理器资源, 从而影响运行的速度。并且, 一个CGI程序只能同时处理一个请求, 在用户发出的请求过多的时候, 网络就会因CGI程序占用过多的内存而出现处理速度变慢、工作效率降低的现象。在多数用户同时发送请求时, 甚至会出现计算机系统崩溃的现象。与此同时, CGI在应用的过程中也不能够提供状态管理的功能, 所以当Web服务器在访问数据库的时候, 浏览器每发出一次操作的请求, 都需要进行一次连接的建立和释放过程, 从而导致运行的速度非常之慢, 工作的效率比较低下。
1.2 服务器API
服务器API是一种驻留在Web服务器上的代码, 与Web服务器紧密的连接在一起, 用于扩展服务器的使用功能。通过对服务器API的利用, 就可以开发出客户端与数据库的接口程序。服务器API可以实现CGI程序的所有功能, 但在实现机制上又有很大的差别, 服务器API的应用程序以DLL (动态链接库) 的形式存在, 而CGI的应用程序则以EXE File的形式存在。基于服务器API的进程, 用户可以获得数据库的所有数据资源, 而且其调用程序时所需要的开销也比较的少, 运行的效率要比CGI程序高。但在开发服务器API时, 需要考虑线程的同步性, 开发步骤比较的繁琐, 开发的难度比较大。
1.3 IDC技术
IDC即互联网数据中心, 它是建立在服务器API基础之上的、通过转换接口实现访问各种数据库的一种技术。IDC是针对特定Web服务器的专用服务器API程序设计出来的, 因此其执行的效率比较高、占用的资源也比较少。但与此同时, 由于IDC技术的设计具有很强的针对性, 所以很难移植到其他的Web服务器上进行使用, 具有很大的局限性。
1.4 ADC技术
ADC即先进数据库连接器, 这种连接器提供了一种Active X控件, 可以在浏览器上实现对数据访问的各种操作, 并且不需要在客户端安装设定即可以自动的进行下载。由于ADC可以使用多种脚本语言进行编程, 还可以与其他控件进行配合使用, 因此简化了编程的过程、提高了工作的效率。但是这种连接器的数据查询是由浏览器来执行的, 需要将记录进行下载并发送至用户端, 因此会引起系统的开销比较大、响应速度比较慢的现象。
2 B/S模式 (浏览器/服务器模式) 常用访问技术
B/S模式下的工作原理是:客户端的浏览器软件最先进行运行, 并向Web服务器发出进行访问数据库的请求, Web服务器在收到访问的请求以后会利用数据库的网关, 把访问的请求转化成为SQL语法, 并输送到数据库的服务器中, 数据库验证其合法性以后对相关的数据进行处理, 并将处理的结果发送给Web服务器, Web服务器再次进行数据的处理和转化, 最终以Web页面的形式在客户端的浏览器上显示出来, 满足客户端对于各种信息的需求, 完成一项命令的操作过程。在信息系统平台的发展进程中, B/S模式逐渐成为Web数据库的使用模式, 这种模式将Web技术与DBMS (数据库管理系统) 相互融合, 伸缩性较大、易于进行扩展, 可以使用户在统一的工作界面上进行信息的查询, 实现了信息资源的高度共享。在B/S模式中, 除了需要用到传统的CGI、服务器API等实现技术外, 还需要用到ASP技术和PHP技术等开发技术。
2.1 ASP技术
在ASP技术中程序代码简单通用, 是一种Web服务器的开发环境, 意思是“动态服务器页面”。ASP技术可以使用简单的动态语言进行编辑, 是一种比较方便和简单的编程工具。它可以通过结合超文本标记语言, 快速完成应用程序。目前, ASP技术主要应用在各种动态网站中。另外, ASP技术的运行结果与浏览器无关, 这种技术使用的动态语言可以在Web服务器执行后, 立即输出超文本标记语言, 浏览器只需识别这种语言代码即可输出用户所需信息。不受浏览器版本的限制, 适用的范围比较的广泛。但是由于这种技术是由Microsoft公司发布的一种技术, 因此, 只能在Microsoft系列的环境中进行运行, 无法实现真正的跨平台使用, 又具有很大的使用局限性。
2.2 PHP技术
PHP技术是一种在服务器端嵌入HTML代码的动态语言。与ASP技术的相似之处在于两种技术都具有扩展性比较强、安全性比较好及执行速度比较快的特点。但是PHP技术与ASP技术相比较又具有以下的优点:首先, PHP技术是可以进行免费下载的, 不用花钱, 直接在PHP提供的官方网站上就可以进行自由的下载, 并可以对获得的各种源代码进行改进, 从中加入自己所需要的特色。其次, PHP技术可以在各种系统中进行运行, 具有很强的可移植性, 因此具有很好的跨平台操作性。PHP安装的资料也可以通过PHP提供的官方网站实现免费获取并进行下载, 同时PHP的安装过程也相当简单, 比较容易操作。第三, PHP技术在访问数据库的时候, 不仅可以使用ODBC驱动程序访问数据库, 还可以使用函数方式直接访问各种数据库, 因此可以充分利用各种数据库的信息资源。但是PHP技术在结构上存在一定的缺陷, 在编程的时候需要努力避免模块的名称发生冲突, 因此只能适用于简单的项目开发与维护。
3 总结
目前, 随着网络信息技术和计算机技术的迅猛发展, Web数据库已经成为因特网上最流行和最重要的服务方式。伴随着数以万计网页的不断出现, 人们面临着大量的信息发布、更新和维护工作, 将数据库技术引入到Web中, 并进行广泛的应用, 使得以上难题迎刃而解, Web数据库技术也成为了信息系统技术开发的重要方向。就目前来讲, 各种不同的数据库技术都有其自身的优点与缺点, 我们只有将各种数据库技术的优势进行结合, 取其精华, 去其糟粕, 才能够开发出具有安全性好、占用资源少、扩展性强、运行效率高, 并能够实现跨平台运行的数据库应用技术, 才能够真正做到Web数据库的灵活应用, 以满足人们对于信息的各种不同需求。
摘要:随着信息科技技术的飞速发展以及计算机技术的普遍应用, 当今社会已经进入了一个知识和信息爆炸的时代。互联网被广泛的应用到社会各个领域, 成千上万的网页不断出现, 人们要对网络中海量信息的发布、更新和维护, 工作量之大可想而知。数据库技术的发展, 有效解决了Web信息管理中的难题, 被人们越来越多地引入到信息管理和网络服务中来。同时, 人们不断地对数据库技术进行创新, 实现了技术上的巨大进步, 使基于Web的数据库技术成为新时代数据库技术发展的重要产物。下面本文对几种传统的数据库技术以及B/S结构下的数据库技术进行了全面的分析比较, 总结出了这几种数据库技术存在的优点及缺点, 希望对数据库技术的进一步完善和发展带来一定的参考和借鉴作用。
关键词:Web,数据库技术,B/S结构
参考文献
[1]丁洪.基于Web的高校科研绩效评价信息体统数据库访问技术研究[J].财经类高校科研绩效评价体系研究, 2012 (9) .
[2]雍静, 刘利萍, 周健.基于WEB数据库技术的职能建筑中央空调系统网络集成[J].工程设计, 2010 (4) .
[3]李卫峰.基于Web服务的数字图书馆异构数据集成研究[J].图书馆学刊, 2010 (1) .
[4]许峰, 王丽美.基于ASP技术的Web数据库系统设计与实现[J].微型电脑应用, 2012 (7) .
[5]王朝阳.基于Web中间件的异构数据库数据集成与同步[J].应用技术, 2013 (6) .
Web数据库 篇5
?
魏 涛 胡杰民 黄 峰?
(炮兵学院研究生系)??
摘要 ASP是服务器端的脚本环境,可以开发动态的、交互的、功能强大的Web站点,本文利用ASP的ADO技术对WWW上的数据库访问进行了深入研究,并结合学员网络档案信息的实例进行了阐述。?
关键词 ASP ADO Web 数据库 数据查询?
1. ASP技术概述
ASP(Active Server Pages)技术的出现完全摆脱了以往的局限性,它不但可以进行复杂的数据库操作,而且生成的页面具有很强的交互性,允许用户方便地控制和管理数据,使用户可以用ASP技术轻松的建立一个可交互的、高效的Web应用程序。?
2. ASP开发Web数据库应用系统技术?
2.1 ADO访问数据库技术?
ADO(Active Data Object)一个ASP内置服务器对象的数据库访问控件,它是针对当前Microsoft软件所支持的数据进行操作的最有效、最简单、功能最强大的方法。它为动态Web页面开发者提供了轻松存取Internet数据库的崭新技术。ADO可以使客户端的程序通过ODBC存取和操纵数据库中的数据表,为用户提供含有数据库信息的主要内容,通过执行SQL命令让用户在浏览器中访问后台数据库。另外,ADO几乎兼容各种数据库系统,例如Microsoft Access、Foxpro、SQL等ADO都提供相同的处理界面供程序设计人员使用。?
2.2 ADO的重要接口?
1) Connection(连接):表示正在使用的数据源和ADO接口之间的.连接。?
2) Error(错误集):表示一个由数据源返回的错误。?
3) Command(命令):表示一个能被数据提供者处理的命令。?
4) Parameter(参数):表示供给Command的参数。?
5)Recordset(游标):最复杂、功能最强大的接口,在使用ADO的应用程序中完成多种操作。
6)Fields(字段):表示Recordset对象中的某一列数据。?
2.3 用ASP开发Web数据库应用系统的步骤和方法?
1) 设置数据源名,在“控制面板”中通过ODBC创建一个系统DSN。?
2)创建和初始化Connection连接对象创建:?
<%SetmyConnection=Server.CreateObject(“ADODB.Connection”)%>?
初始化:?
<%myConnection.Open“DSN=DSNName”?
3) 通过SQL语句操作数据库,并返回一个结果集。?
<%?
SQL=“Select*From Tablename”?
Set Rs=myConnection.Execute(SQL)
%>?
4) 显示数据库处理结果,利用Recordset对象所提供的属性显示查询结果。?
5) 关闭结果对象集,断开与数据库连接。?
Rs.close?
MyConnection.close?
3. ASP技术在学员档案信息查询网络系统中的应用学员档案信息查询在浏览器上运行,Web服务器是Window NT Server4.0上运行的IIS4.0,支持ASP环境,后台数据库选用Office中的Access。客户端采用WIN95/98平台,浏览器为IE4.0。开发工具采用Visual InterDer或frontPage 等。?
下面以学员档案查询的例子说明ASP技术在系统中的应用:?
学员档案信息数据库Student?-record.mdb中的表Student的字段为:?
姓名、学号、性别、籍贯、专业、单位、毕业学校、出生年月、入学日期、备注。?
Web数据库 篇6
[关键词] ASP 数据库
一、ASP概述
ASP 是微软公司开发的代替CG1脚本程序的一种应用,它可以与数据库和其他程序进行交互,是一种简单、方便的编程工具。ASP即不是程序语言,又不是开发工具,而是一种技术框架。通过ASP可以结合HTML网页、ASP指令和ActiveX控件建立动态的、交互的、高效的Web服务器应用程序。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。
二、ASP简介
1.ASP的主要特点
(1)ASP面向对象编程,可便捷的使用ActiveX组件来执行复杂的任务。
(2)无需编译,Web服务器直接执行脚本代码。
(3)使用普通的文本编辑器(如windows的记事本)就可以进行编辑设计,也可以使用高效的可视化工具VisualInterDev.
(4)独立于浏览器,用户端的浏览器只要能执行HTML代码即可。ASP使用的脚本语言在Web服务器端执行,用户端浏览器不需要能执行这些脚本语言。
(5)ASP的源程序隐藏,不会被传到用户浏览器,用户仅能看见由ASP输出的动态HTML文件,这提高了程序的安全性。
(6) 使用VBScript,javascript等简单易懂的脚本语言,脚本语言完全嵌入HTML不仅可快速的完成网站的应用程序,还实现了程序与页面的完美结合。
(7)可使用服务器端的脚本产生客户端的脚本。
(8)实现复杂数据库操作.ASP完全摆脱了CGI和ISPAI技术的局限,通过ADO实现对后台数据库的复杂操作,同时可生成交互性很强的页面。
2.ASP程序结构
ASP的程序代码简单、通用,文件名由.asp或.htm结尾,ASP文件通常由四部分构成:
(1)标准的HTML标记:所有的HTML标记均可使用。
(2)ASP语法命令:位于<% %> 标签内的ASP代码。
(3)服务器端的include语句:可用 #include语句调入其他ASP代码, 增强了编程的灵活性。
(4)脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能,用户也可安装其他脚本语言,如 Perl、Rexx等。
3.ASP的内建对象
ASP提供了六个内建对象,这些对象是由运行环境自动产生的而不需要用户自己去创建,用户可直接调用这些对象的属性和方法。
(1)Response对象:该对象主要是从服务器向用户端发送数据。包括Buffer和Expires两种属性,方法有write、redirect、end、clear4种。
(2)Request对象:从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法。
(3)Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。
(4)Server对象:提供对服务器有关方法和属性的访问。
(5)Session对象:存贮特定用户的会话信息,只被该用户訪问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。
(6)ObjectContext对象:IIS4.0新增的对象,用来进行事务处理。此项功能需得到osoftTranscationServer)管理的支持。
三、ASP访问WEB数据库的步骤
1.配置数据库文件 DSN
在“创建新数据源”对话框中,从列表框中选择数据库名称例如“sql Server”,然后单击“下一步”。键入 DSN 文件的名称,然后单击“下一步”。单击“完成”创建数据源。键入运行 sql 服务程序的服务器的名称、登录 ID 和密码。
2.连接数据库
访问数据库信息的第一步是和数据库源建立连接。ADO提供 Connection对象,可以使用该对象建立和管理应用程序和ODBC 数据库之间的连接。
3.检索记录
检索数据、检查结果、更改数据库,ADO提供了Recordset对象。Recordset 对象有许多可以使用的特性,根据查询限制,检索并且显示一组数据库行,即记录。Recordset对象保持查询返回的记录的位置,允许一次一项逐步扫描结果。根据 Recordset对象的指针类型属性设置,可以滚动和更新记录。数据库指针可以让您在一组记录中定位到特定的项。
4.用Command对象改善查询
通过ADO Command对象,可以在数据库源上准备、编译您的查询并且反复使用一组不同的值来发出查询。这种方式的编译查询的优点是您可以最大程度地减少向现有查询重复发出修改的请求所需的时间。Command对象的parameter集合减少了麻烦,不必在每次重新发出查询时重新建立查询。用Command对象编译查询也可避免 sql 查询引起的合并字符串和表格变量问题。
5.结合HTML表格和数据库访问
包含HTML表格的web页可使用户远程查询数据库并且检索特定的信息。使用asp Request对象,可以检索输入到HTML表格的信息并将这些信息合并到sql语句中。
6.关闭连接
使用Connection对象的Close方法终止Connection对象和数据库之间的连接。
四、结束语
数据库的应用范围相当广泛,ASP作为一门新兴的网络技术在数据库领域有着相当广阔的发展前途。在ASP中访问WEB数据库的关键是建立与数据库的连接,只有建立了连接,才能实现对数据库数据的增加、删除、修改,更新及查询操作。
参考文献:
[1]李晓黎张巍编著:ASP+SQL Server网络应用系统开发与实例[M].北京:人民邮电出版社,2004
[2]曹建主编:ASP 实例教程[M].北京:电子工业出版社,2000
Web数据库访问技术的研究 篇7
关键词:web数据库,ASP,JSP
随着Internet规模和用户的不断增加,Internet上的各种应用进一步得到开拓。Internet成为资源共享、数据通讯和信息查询的重要手段。数据库技术经过几十年的发展也日益成熟起来,丰富的数据模型和强大的数据管理功能,支持各类新的应用要求。Internet用户对信息的实时性、交互式、动态访问的需求日益增长。解决这一问题的方法之一就是将Web技术与数据库技术相互渗透,相互结合。
1 Web数据库体系结构
Web数据库系统是建立在浏览器/服务器(B/S)模型之上的。该模式在TCP/IP的支持下,以HTT P为传输协议,客户端通过Browse r访问WE B服务器以及与之相连的后台数据库。WWW浏览器负责信息显示与向服务器发送HTTP请求。Web服务器介于W eb浏览器与数据库服务器之间,负责接收用户服务,并作出响应。服务器将数据传送至要被处理的脚本或应用程序,并在数据库中查询数据或将数据投递到数据库中。最后,服务器将返回结果插入到HTML页面,传送至客户端以响应用户。从而实现在Internet的环境下对数据库的访问操作。使得Internet中的信息更丰富、使用更简便。其体系结构如图1所示。
2 Web数据库访问技术
一般有三种方法:一种是基于Web的中间件技术,在这种结构下,有许多中间件方案可以选择,公共网关接口(CGI),Web应用程序编程接口(Web API),ASP,JSP,Java Servlet等。这种方法是采用Web服务器端提供中间件来连接Web服务器与数据库服务器,中间件完成对数据库的访问,结果再由Web服务器返回给客户端的浏览器。其工作流程如图2所示。
另一种是把应用程序下载到客户端并在客户端直接访问数据库,访问Web数据库的客户端方法主要包括:Java Applet,ActiveX,Plug-in等,其中最典型的就是Java Applet。其工作流程如图3所示。
第三种方式综合了以上两种方法,既在服务器端提供中间件,同时又将应用程序的一部分下载到客户端并在客户端通过Web服务器及中间件访问数据库。
以下将逐一介绍和分析Web环境下的数据库访问技术,并对其性能做比较。
2.1 基于Web的中间件技术
2.1.1 C G I的方法
CGI(Common Gateway Interface,通用网关接口)。CGI是Web服务器与外部应用程序之间的标准接口。CGI是最早的Web数据库连接技术,几乎所有的Web服务器都支持CGI。可以用任何语言编写CGI程序,如C、C++、Delphi、Java、VB、Perl等。CGI程序的主要作用在于扩展Web服务器的功能,实现Web服务器与数据库服务器的连接,充当Web服务器与数据库服务器之间的网关,通过Web发来的操作转化为对数据库的操作,然后将结果以Web浏览器可以识别的形式返回。完成和浏览器进行交互作用。
如一个CGI程序可从某数据库服务器中获取数据,转换成HTML文档后发送给浏览器,也可将由浏览器获得的数据存储到数据库服务器中。这样客户端用户就可以方便地和Web服务器进行交互,实现数据处理。
CGI的缺点:CGI的应用程序一般都是一个独立的可执行程序,与Web服务器各自占据着不同的进程,而且一般一个CGI程序只能处理一个用户请求。每当有一个用户请求,就会激活一个CGI进程。当用户请求数量非常多时,大量的CGI程序就会大量挤占系统的资源,如内存、CPU时间等,造成CGI运行效率低下。CGI不提供状态管理功能,因而在Web服务器访问数据库过程中浏览器的每一次请求,都需要一个连接的建立与释放的过程,效率较低。极大的浪费服务器资源。另外CGI的功能有限、开发较为复杂,且不具备事务处理功能,这在一定程度上限制了它的应用。
2.1.2 基于服务器扩展的API
为了解决CGI的局限性,出现的另一种中间件解决方案是基于服务器扩展API的结构。专用服务器API方式中,最著名Microsof的ISAPI和Netscape公司NSAPI。服务器API方式以DLL(动态链接库)的形式存在,可以在被用户请求激活后长驻内存,等待用户的另一个请求,也可以在一个DLL里设置多个用户请求函数。此外,DLL应用程序与WWW服务器软件处于同一地址空间,每次调用时是在内存中运行相应的程序段,而不是像CGI那样需要启动新的进程,因此运行效率要高于CGI程序。是驻留在WWW服务器中的程序代码,其扩展WWW服务器的功能与CGI相同。
与CGI相比,API在性能上得到了很大提高,API应用程序与Web服务器结合得更加紧密,占用的系统资源也相对较少,而运行效率显著提高,但开发API程序比开发CGI程序要复杂得多。由于API与其相应的WWW服务器紧密结合的特性,这些API只能工作在专用Web服务器和操作系统上。
2.1.3 ASP(Active Server Pages)
ASP既不是一种语言,也不是一种开发工具,而是一种技术框架,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。
ASP属于ActiveX技术中的Server端技术。与在Client端的Script命令是由浏览器来解释执行实现动态网页的技术(如JavaApplet、VBScript、JavaScript等)不同,ASP中的命令和Script语句都是由服务器来解释执行的,执行结果产生动态生成的Web页面并送到浏览器。
当浏览器向WebServer请求调用ASP文件时,就启动了ASP。Web Server开始调用ASP,将被请求的.asp文件从头读到底,执行每一个命令,然后动态生成一个HTML页面并送到浏览器。通过ASP内置的对象、服务器组件(Server Component)可以完成非常复杂的任务,而且用户还可以自己开发或利用别人开发的服务器组件完成专门的任务。
由于ASP是在服务器端解释执行,可以不必考虑浏览器是否支持ASP;同时由于它在服务器端执行,开发者也不必担心别人下载程序从而窃取编程逻辑。
2.1.4 JSP(Java Server Page)
JSP是建立在Java体系上的,具有独立于平台,独立于服务器的特点。
Ja va是S un公司推出的一种面向对象的、分布式、移植性强、安全性高、稳定性好的程序设计语言,支持多线程控制,独立于平台的软件技术。
JDBC技术是Java Database Connectivity的缩写,它是JavaSoft公司设计的Java语言的数据库访问API。程序设计人员通过它可以方便的建立与数据库的连接,操纵数据库。
JS P综合了中间件和J av a的优点:前者的优点在于可以使程序访问异构的数据库,而不必对应用程序作出改动,后者的优点在于具有平台无关行,不需要为不同平台编写不同的应用程序。
JSP的工作方式为:客户端浏览器首先访问Web服务器,从Web服务器上下载Java小程序Applet的字节码文件,以及相关类和JDBC接口的字节码文件。然后和Web服务器脱离,Applet根据数据库服务器的地址、端口号、帐号和数据库服务器连接,进行交互操作。由于JSP技术有可操作性、可维护性、安全性、高效性等一系列优良特性,因此和其他中间件技术相比,有很大的优势。
2.1.5 Java Servlets
Jav a动态W eb技术的另一个重要分支是Java Servlets。Java Servlets是运行于Web服务器端的程序,能够象CGI脚本一样扩展Web服务器功能。它在初始化时装入Web服务器的存储空间,并成为服务器的一个组成部分。其工作过程是:当浏览器向服务器发出请求时,服务器将该请求传递给一个Servlet,该Servlet通过JDBC向数据库发出SQL请求并构造响应结果,然后通过服务器将结果传递回浏览器。
2.2 把应用程序下载到客户端在客户端直接访问数据库的方式
2.2.1 Java Applet
Java Applet,它的实现方式是通过Web浏览器把应用下载到客户端运行,在客户端直接访问数据库。其工作过程是:当Web浏览器从服务器上下载了包含有Java Applet的HTML页面时,如其中的JavaApplet调用了JDBC,则浏览器运行的Java Applet直接与指定的数据库建立连接,并向其提交SQL语句,Applet从数据库接受返回的结果并进行处理,将最后结果显示在浏览器上。
在客户机上运行Java Applet通过JDBC技术可以绕过Web服务器直接和数据库服务器连接,并直接把带有结果的HTML页返回客户机浏览器。
Ja va Ap ple t优点:体系结构中立,与平台和操作系统无关。动态运行,无须在用户端预先安装。当服务器端的Java Applet更新后,客户机端总是可以使用最新的版本。
2.2.2 Plug-in
Plug-in是由NetScape提出的标准,是一种接入浏览器程序的动态链接库(DLL),它采用了DLL方式,可以很好地解决与浏览器程序间的相互调用问题。
Plug-in作为网络能力的一种扩展,将大部分负荷加在浏览器程序上,这样就能正确地浏览很多数据类型,在浏览器端完成信息显示。特点是操作速度快,服务器和网络传输的负担轻。服务器仅需提供数据服务,网络只需将数据一次性传输。服务器的任务很少,网络传输的负担轻。
缺点:需要事先安装。用户如想使用,必须下载安装Plug-in程序。Plug-in与平台相关。不同的操作系统需要不同Plug-in。对于不同的Web浏览器,同样需要用相对应的Plug-in。如果用户准备使用多种数据类型,必须安装多个Plug-in程序。势必对管理带来压力。同时也占用占用客户端机器磁盘空间。更新困难。升级时,需要重新下载安装。
2.2.3 ActiveX
ActiveX是Microsoft为适应互联网而发展的标准。是为扩展Microsoft Web浏览器Internet Explore的功能而提供的公共框架。
ActiveX能被支持OLE标准的任何程序语言或应用系统所使用。IE浏览器可以作为容器,任何符合ActiveX标准的控件都可以嵌入到网页中,在浏览器中显示。
工作原理:Web浏览器发出请求;Web服务器接受到用户的请求,进行处理,并将用户所要的数据和ActiveX控件(第一次浏览时)传送给Web浏览器;ActiveX控件负责向Web服务器请求数据,并对数据进行处理,完成操作。
ActiveX控件安装的前提是必须经过用户的同意及确认。它具有Plug-in模式的所有优点。同时,ActiveX能被支持OLE标准的任何程序语言或应用系统使用,比Plug-in模式更灵活,使用更方便。
缺点:需要下载,占用客户端机器的磁盘空间。与平台相关,对不同的平台,必须提供不同的ActiveX控件。与浏览器相关ActiveX控件最初只适用于Microsoft Web浏览器。在其他浏览器使用时,须增加特殊的Pulg-in予以支持。存在信息安全隐患ActiveX具有访问客户端本地文件系统的能力,使得ActiveX可以具有强大的功能,但存在信息安全隐患。
3 结语
通过上面的介绍我们对不同的Web数据库技术实现方式和特点的了解。
则采用CGI方式服务器的负担重效率低,增加了网络传输的负担,但对各种平台兼容性好。
专用服务器API方式的优点是执行效率高,但其缺点就是与平台有关,一种专用服务器API程序只能在该种Web服务器上运行。
ASP由于是在服务器端解释执行,支持所有浏览器,编程逻辑不易被窃取。但是效率较低,且基本上只能运行于Microsoft的Windows系列平台之上,又限制了它的发展。
JSP与平台无关具有移植性强、安全性高、稳定性好、等众多优点。
Java Applet、Plug-in、ActiveX把应用程序下载到客户端并执行的方式,占用服务器的资源较少,服务器和网络传输的负担轻。但也有各自缺点,Plug-in与平台相关,移植性差。ActiveX控件体积过于庞大,用户浏览时进行下载速度较慢。支持ActiveX的平台还只限于Windows系列。
以上各种WEB数据库访问技术各有优缺点和适用领域。因此,在设计Web数据库应用方案时,应该根据实际环境要求选择合适的方法。
参考文献
[1]邵佩英.分布式数据库系统及其应用[M].北京:科学出版社,2009:283~295.
[2]葛平升.Web数据库技术应用研究与实现[D].西安:西北工业大学,2002:27~43.
[3]皇祯平,王万诚.对几种Web数据库访问技术的分析与研究[J].控制工程,2003,10(3):230~232.
[4]徐琨,刘志镜,来琳涵.Web数据库访问的中间件技术分析与研究[J].计算机工程与科学,2002,24(4):55~56.
[5]催政.三种常用Web数据库技术应用对比分析[J].中国科技信息,2005(17):9.
浅谈Web与数据库接口技术 篇8
1 We b与数据库接口技术
1.1 利用公共网关接口(CGI)
CGI(Common Gateway Interface)是WWW服务器和浏览器之间的标准接口。实际上,它是允许WWW服务器运行能够生成HTML文档,并将文档返回WWW服务器的外部应用程序规范。任何一种程序语言,只要能在服务器主机上利用CGI接口来编写应用程序,都可以叫做CGI程序语言。目前,最为流行的CGI程序语言有C,Shell,Perl,Visua Basic和Delphi。
CGI程序一般是个可执行程序。编译好的CG程序一般要集中放在一个目录下,具体存放的位置随操作系统的不同而定。CGI程序的执行是通过交互式主页里的FORM栏调用,通常都是用户在填完一张表后按“确认”按钮启动CGI程序。
1.2 利用ISAPI
ISAPI是基于Microsoft IIS的专用应用编程接口,它实现CGI的全部功能,并在此基础上进行了扩充,提供了开发交互操作的API接口。在ISAP下建立的应用程序是以动态连接库的形式存在的,与WWW服务器软件处在内存的同一地址空间中,能够访问WWW服务器的所有资源。每次调用只是在内存中运行相应的程序段,并不需要像CGI程序那样需要启动新的进程,也不需要执行相当耗时的进程之间的通信,而且可以在1个DLL里设置多个用户请求处理函数,所以效率比CGI高得多。
1.3 利用JDBC API
Java的推出,使Web页面有了活力和动感。Internet用户可以从Web服务器上下载Java小应用程序到本地浏览器上运行,但并不适应对数据库的访问[2]。随着应用的深入,要求Java提供数据库访问的呼声越来越高,因此出台了JDBC。JDBC(Java Database Connectivity)是Java语言的SOLAPI,它支持Java程序和数据库系统之间实现无缝的接口,JDBC和ODBC相似,为Java编程者提供了相似的功能,所不同的是ODBC是C语言的接口,而JDBC是Java语言的接口。
1.4 利用IIS(Internet Information Server)和IDC技术
为了使WWW与数据库之间的交互更简洁、透明,微软公司在其IIS中提供了运行于ISAPI之上的一个名为IDC(Internet Database Connector)的软件,它实际上是一个ISAPI应用程序(HTTPODBC DLL),使用.Idc和.htx两类文件来控制存取数据库及返回结果HTML页面的构造。
1.5 利用ASP
ASP(Active Server Page)是Web服务器端的开发环境,是Active X技术的一种。利用它可以产生和运行动态的、交互的、高性能的Web服务应用程序。Active X技术在WWW技术上可分为Active X Client和Active X Server两大类[3]。通常实现动态主页的Java applet,Active X control,VBScript Java Scrip等属于Client端的应用,通过浏览器来解释执行它们的语句命令;而ASP是Server端的应用环境,它也是通过描述语句(Script)来实现动态主页,但由服务器解释执行,生成一个HTML页面返回客户端。它的好处在于你不需担心浏览器是否能处理ASP,而且不会像Client端的Script那样让别人知道你的编程逻辑。
2 用IIS与WWW来实现教材信息查询系统
2.1 系统介绍
基于Web的教材信息查询系统,教师很方便地在校园网的任意一台计算机上对现有教材库进行查询及办理订书手续。而对教材科的管理员来说,既节省了时间,又可以不受时间和空间的限制,还简化了手续,方便了使用及维护。
2.2 实现的具体过程
1)数据库的处理。首先,在SQL SERVER中创建数据库设备(Database Device)和数据库(Database),然后再创建与原先数据库对应的一个表(Table)。在创建表时,表的字段属性一般与原来的dbf库相一致。本系统的数据库来自教材科提供的Foxpro下的dbf数据库。因为本系统的后台数据库服务器采用的是MS SQLSERVER 6.5,所以要用bcp程序来实现原来的dbf数据库,并转化成MS SQL SERVER 6.5下相应的表,但在用bcp命令时发现,bcp命令在从dbf数据库的int,float等类型转化时出现异常。所以,在转化时要对一些特殊字段进行特殊处理。如先把其他类型的字段转到char类型,然后在进行字段计算时再进行类型的转化,最后转化成SQL表后用其中的Isql_w功能来验证转化的正确性。
2)编写用户界面。笔者认为,在编辑用户界面时,应以以下两条原则为准:一是用户界面要友好;二是页面要简洁、高效。所以,在用Fontpage2000做用户界面时,页面要做到简洁,尽量不用大容量的图片、动画等,从而节省用户的查询时间,提高了查询效率,同时还要给出相应的提示或解释。
3)编写IDC文件。通过用户界面所需要查询的情况,编写高效的IDC文件代码。在此期间,由于有几个功能的使用要有一定的权限(如对数据库的维护、预订处理等),所以在界面中添加了口令验证这一安全措施。该措施的实现是这样的:在sql server教材表中的用户组中添加所要的用户名及口令,在IDC文件的Username中给出在SQL SERVER中设置的用户名,并在Password中用用户界面提交口令变量。
另外,可以解决安全问题的措施还有如下两种方法:一是在创建数据库的同时创建一个数据库访问日志文件,以便查看访问数据库的情况,以及在给表的访问权限设置时,尽量给有限的访问权限。二是利用IIS的登陆验证口令来实现。在WWW服务的属性中,在设置访问权限时,选中“基本文明”方式,同时确保不选中“匿名访问”方式。这样可以由“域用户管理”功能来设置和管理访问用户。这两种方式的安全性验证与本系统所采用的区别是:第一,前者是由NT SERVER系统本身的用户口令登陆的机制来实现的,而后者是由SQL SERVER中的数据库对象访问权限的机制来实现的。第二,前者对所有访问该服务器的用户都要口令,而后者可以有选择地进行口令验证。
总之,随着Intranet的不断发展,WWW与数据库的连接技术已经成为校园网络信息资源开发的不可缺少的技术之一。
参考文献
[1]Piroz Mohseni.Web数据库开发人员指南[M].张录娥,译.北京:机械工业出版社,1997.
[2]邱仲潘.JavaScript从入门到精通[M].北京:电子工业出版社,1998.
Web数据库技术及其发展趋势 篇9
关键词:Web,数据库技术,发展趋势
1 Web数据库技术实现方法
数据库应用的一个重要方面就是对数据的访问, 目前Web数据库技术多采用三层或者多层体系结构, 其前端采用基于瘦客户机的浏览器技术, 通过服务器及中间件访问数据库。
1.1 ASP实现Web数据库
ASP是一个Web服务器端的开发环境, 可以建立和执行动态的、交互式、高效率的WWW服务器的应用程序, 其最重要的应用是访问Web数据库。ASP通过ODBC或者OLEDB与后台数据库相连, 由数据库访问组件ADO中的Connection 对象、Recoredset对象和Command对象来使用数据库并将结果返回。ADO是ASP内置的Active X服务器组件, 是目前微软所支持的数据库进行操作的最有效和最简单、直接的方法。
1.2 JSP实现Web数据库
JSP因其具有健壮性、安全性、可移植性、易理解、易使用、可自动下载等优势, 成为一种非常好的Web数据库开发技术。其以成熟、强大的、易扩充的Java语言为脚本, 实现了Web动态内容与显示的分离, 且经编译后大大提高了运行速度。JSP通过JDBC技术来实现对数据库的访问, 使用JDBC可以在不同的数据库功能模块层次上提供统一的用户界面, 开发人员可以在简单的数据库界面上实现不同的数据库连接, 开发出功能强大的Web数据库应用程。
1.3 PHP实现Web数据库
PHP是一种易于学习和使用的服务器端的HTML嵌入式脚本语言, 混合了C语言、Java语言和Perl语言的特点, 是一种被广泛应用的开源式的多用途脚本语言, 适合用于Web数据库开发。PHP常与免费的Web服务器软件Apache和免费的数据库MySQL配合适用于Linux平台上, PHP提供了标准的数据库接口, 可直接与各种数据库进行连接。PHP提供的函数功能几乎覆盖了Web各方面的应用, 使用这些函数可以对数据库进行连接、选择、查询等操作。
1.4 .NET实现Web数据库
.NET可以很方便的对多种数据库进行开发, 数据源可以是数据库, 但是也同样能够是文本文件、Excel表格或者XML文档。是目前比较流行的信息管理系统开发工具, 其数据库开发技术在软件编程中得到广泛的应用。.NET在进行数据开发时, 主要使用ADO.NET组件来编写对数据库服务器中的数据进行访问和操作的应用程序。具有易于使用、高速度、低内存支出、占用磁盘空间小等优势, 支持用于建立基于客户端/服务器和Web的应用程序的主要功能。
2 Web数据库研究热点和发展趋势
当今, 数据库要管理的数据的复杂度和数量都在爆炸式的增长, 数据库也在不断地往深度和广度广泛应用着, 企业已经对信息化提出更高要求, 要求数据库从简单的数据处理到信息服务、到业务管理, 甚至到知识决策, 这些因素推动着Web数据库技术的发展, 也因此催生和发展了其他相应技术。
2.1 XML数据管理
目前不少单位使用了自动化办公管理系统实现文档的管理, 然而管理系统开发单位和业务系统开发单位往往不同一家, 没有统一的接口, 没有事先约定无法实现不同格式信息的交换, 给Web服务带来了困难。XML具有支持多种数据格式的能力, 能够有效解决多种数据格式的能力, 能够有效解决异构平台、不同数据格式之间的数据交换问题。
XML是一种基于Unicode的纯文本元语言, 即一种用于定义标记语言的语言。它不依赖于任何编程语言、操作系统或软件供应商, 具有良好的结构和约束及良好的可重用性, 便于实现数据集成和共享。
一个好的Web数据库模型, 应该能在内部数据库系统中进行很好的结合, 以统一的语言描述交换的数据, 它具有良好的柔韧性, 使用开放的标准, 安全可能性和原有的系统以及其他应用程序建立无缝连接。XML数据管理正是符合了这一要求, 而被广泛应用。尤其在数据结构复杂的行业领域中, 给不同国家的不同系统信息的数据交换带来了方便, 大大推动着Web数据库技术的发展。
2.2 AJAX技术的应用
AJAX 不是一种新的编程语言, 而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。它由多种技术综合而成, 其中包括:基于Web标准的XHTML和CSS实现数据信息的统一化和标准化显示;使用DOM实现浏览器的动态显示和服务器端的交互;使用XML和XSTL进行数据交换与处理;使用XMLHttpRequest 进行异步数据查询、检索;使用 JavaScript 将所有的要处理的数据绑定在一起。
AJAX在三层体系结构中, 相当于在客户端和服务器之间假设了一个桥梁、一个媒介, 在它的帮助下, 可以消除网络交互过程中的处理——等待——处理等缺陷问题。AJAX允许用户与应用软件之间的交互过程异步执行, 其通过Ajax引擎实现页面自动瞬时更新, 减轻服务器的负担, 用户不需要刷新页面, 读取数据的时候不会出现白屏, 感觉更良好。
AJAX是Web2.0时代系列技术和相关产品服务中非常重要的一种技术, 实现了客户端与服务器端的异步交互, 更加推进了Web数据库应用的发展。
2.3 网格计算的支持
Web数据库更智能化的一个重要体现在其高性能的计算方式。而超级计算机昂贵的价格却阻挡了高性能计算的普及, 于是造价低廉而数据处理能力超强的计算模式——网格计算应运而出。
网格是一个集成的计算机与资源环境, 它能利用互联网把地理上广泛分布的各种网络资源连成一个逻辑整体, 就像一台超级计算机一样, 并将它们转化成一种随处可得的、可靠的、标准的、经济的计算能力, 为用户提供一体化信息和应用服务。
网格计算通过利用大量异构计算机的未用资源 (CPU周期、磁盘存储等) , 将其作为嵌入在分布式电信基础设施中的一个虚拟的计算机集群, 为解决大规模的计算问题提供了一个模型。更好的利用可用计算力, 迎合大型的计算练习的断断续续的需求。
网格计算将是Web数据库技术发展的大趋势之一, 其出现受到了众多厂商的追捧, 到目前为止, 提供网格运算方案的商家主要有:IBM、甲骨文、惠普科技、SUN等。作为一种新出现的重要技术, 网格计算是目前研究的热点之一, 也势必会对数据库技术带来巨大的冲击。
2.4 数据挖掘技术的应用
在计算机的帮助下, 人们可以借助数据库这个强有力的事务处理工具将传统的事务处理的更好、更高效、更方便。不满足现状是社会前进的动力, 人类已经不仅仅满足于让计算机处理事务, 更希望用计算机帮助分析数据和理解数据, 帮助他们基于丰富的数据做出决策, 这就导致了数据挖掘技术的蓬勃发展。数据挖掘一般是指从大量的数据中自动搜索隐藏于其中的有着特殊关系性的信息的过程。应用数据挖掘技术对网络资源用户的访问行为进行跟踪, 了解用户访问网络资源的行为关联程度及轨迹, 并以此为依据, 改进Web数据库访问策略, 提高访问效率和网络资源的安全性, 以增强信息检索系统的能力。
2.5 云数据库的出现
随着云的兴起, 非关系型数据库成为了新的研究领域, 其产品近年来发展非常迅速。那么, 传统简单的关系型数据库将无法应对这些复杂的数据形式, 且关系型数据库的各项约束规则束缚了数据库系统的发展。这时候的云端需要一个真正强大的, 能让多台计算机一起运行的数据库系统, 保存用户所有的数据, 我们把这样的数据库称为“云数据库”。云数据库主要特点是非关系、分布式、水平可扩展的, 非常适合用于云计算中海量数据的处理。目前, 云数据库市场主要有Google的Britablc, Amazon的SimpleDB, AppJet的AppJet数据库以及甲骨文的BerkelyDB等新型产品。“云”是目前非常热门研究课题之一, 国家信息产业部正在制定云计算相关标准, 在各个地方和省级政府的政策支持下, 不久将来云计算势必掀起一片产业浪潮, 作为云计算发展的“基础配套设施”云数据库也会获得快速发展。
3 结束语
计算机的普及和网络速度的提高, 为促进Web数据库的发展铺垫了基础, 从早期的CGI、API技术到目前流行的.NET、JSP+AJAX技术, 每一种新技术的产生都是从某些方面对已有技术的某些特性进行改进和完善。Web2.0时代下, 博客、RSS、百科全书、网摘、社区网络等多人参与的技术应用, 要求大量的数据可及时送入数据库, 也要使网站信息公布速度更快、数量更多。不同数据库的数据互联, 网络数据库的数据表示等新技术不断地推动着Web数据库技术往具有更好的自适应管理能力、提供智能化策略方向发展。
参考文献
[1]赵艳平.数据库管理系统的组成和发展[J].科技信息, 2011 (7) .
[2]李步升.基于XML的Web数据库技术在公交查询系统中的应用[J].电脑开发与应用, 2008 (11) .
浅议常见WEB数据库访问技术 篇10
随着互联网的发展, 人们对WEB网页的要求越来越多趋向于动态性、实时性和交互性, 这在很大程度上依赖于WEB数据库。所以, WEB技术与数据库管理系统相互融合领域的研究成为热点方向之一, 数据库厂家和WEB服务器提供商纷纷推出各自的产品支持WEB技术和数据库的互联。下面对当前几种常见的WEB数据库访问技术的特点进行分析和比较。
(二) CGI中访问数据库
CGI (Common Gateway Interface, 公共网关接口) 是实现在服务器端执行程序的一种方法, 运行程序输出的是HTML页面, 然后WEB服务器再把这个静态页面返回给浏览器作为请求的响应。最流行的CGI语言是Perl和shell脚本, 但是也可以使用C、C++以及Java等语言进行编写。CGI是最早普遍使用的WEB数据库访问技术, 可以访问存储在数据库中的数据或者其他系统中的文件, 实现动态生成WEB页面的效果。
CGI的跨平台性能极佳, 几乎可以在任何操作系统上实现, 但其缺点是CGI应用程序都是一个独立的可执行程序, 会与WEB服务器上的其他进程争夺处理器资源, 导致运行速度减慢。而且一个CGI程序只能处理一个用户请求, 一个用户请求就会激活一个CGI进程。当用户请求数量非常多时, 大量的CGI程序就会挤占系统的内存、处理器时间等资源, 造成CGI运行效率低下。另外CGI的功能有限、开发较为复杂, 且不具备事务处理功能, 这在一定程度上也限制了它的应用。
(三) Web API技术
CGI运行效率较低、功能有限、开发复杂, Web服务器软件厂商开发了基于各自服务器的API (Application Program Interface, 应用程序编程接口) 。这种API通常以动态链接库 (Dynamic Linkable Library, 简称DLL) 的形式提供, 是驻留在Web服务器上的程序。它的作用与CGI相似, 也是为了扩展Web服务器的功能。目前最流行的API有Netscape的NSAPI和微软的ISAPI。这2种接口允许以标准方式编写Web服务器交互的应用程序, 其中对数据库访问的功能主要是以IDC (Internet Data Center, 互联网数据中心) 文件形式提供给客户的, 在IDC文件中定义了数据源、返回的模板以及动态的SQL (Structure Query Language, 结构化查询语言) 语句。
API的工作原理和CGI大体上是相同的, 都是通过交互式主页取得用户输入信息, 然后交服务器后台处理, 可实现CGI程序所能提供的全部功能。但是二者在实现机制上大相径庭。在API下建立的应用程序都是以动态链接库的形式存在的, 而CGI的应用程序一般都是可执行程序。在API调用方式中, 被用户激活的DLL和WEB服务器软件处于同一地址空间, 每次调用时是在内存中运行相应的程序段, 而不是像CGI那样需要启动新的进程, 因此运行效率要高于CGI程序。但开发API程序比开发CGI程序要复杂得多, 需要更多编程方面的专门知识, 如多线程、进程同步、直接协议编程以及错误处理等。此外, 各种API之间兼容性很差, 特定的API只能工作在专用WEB服务器上, 如Netscape公司的NSAPI只能在Netscape Server上执行, 而ISAPI只在微软的IIS上有完整的功能。
(四) ODBC和JDBC
API与Web服务器结合紧密, 所以性能较高。但由于利用底层的API开发数据库访问程序仍然很困难, 因此一般使用基于底层API的高层数据库编程接口, 这就是ODBC (Open DataBase Connectivity, 开放式数据库互联) 。ODBC是微软公司开放服务结构 (Windows Open Services Architecture, 简称WOSA) 中有关数据库的一个组成部分, 它建立了一组规范, 并提供了一组对数据库访问的标准API。这些API利用SQL来完成其大部分任务。Web服务器通过数据库驱动程序ODBC向数据库服务器发出SQL请求, 数据管理系统执行SQL查询并将查询结果再通过ODBC传回WEB服务器。许多服务器扩展程序使用包含这种ODBC层的系统结构。由此可知, 一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS, 不直接与DBMS打交道, 所有的数据库操作均由各个DBMS的ODBC驱动程序完成。也就是说, 不论是FoxPro、Access、MYSQL还是Oracle数据库, 均可用ODBC API进行访问。因此, ODBC一个最大的优点是能以统一的方式处理所有的数据库。
与ODBC类似, JDBC (Java Database Connectivity, Java数据库连接) 为Java数据库开发应用提供了标准的应用程序编程接口。JDBC由一组用Java语言编写的类和接口组成, 是用于执行SQL语句的Java应用程序接口, 它规定了Java如何与数据库进行交互作用。通过使用JDBC, 开发人员可以很方便地将SQL语句发送给几乎任何一种数据库。
与ODBC相比, JDBC技术具有以下几个优势。第一, JDBC是“纯Java”的ODBC解决方案, ODBC发布必须在每台客户机上手工安装, 而JDBC代码在所有Java平台上随运行环境自动安装, 具有平台无关性, 安全性和适用性强, 可以跨平台与各种数据库连接进行访问;第二, ODBC的C API运用了大量的指针, 而Java消除了指针等认为网上运行不安全的因素且面向对象;第三, ODBC难以学习, 而JDBC仅是Java开发环境的一部分。另外, 从功能上看, JDBC也已经逐步得到了广泛的支持, JDBC为访问更多的数据库提供了JDBC-ODBC桥来扩展其功能。
总之, JDBC保留了ODBC的基本功能, 区别在于JDBC充分地利用了Java的风格。因此, 它成为Intranet和Internet环境下访问异构数据库的一种较优方式。目前, JDBC已经得到了许多厂商的支持, 包括Borland、IBM、Oracle和Sybase等公司, 大多数流行的数据库系统都推出了自己的JDBC驱动程序。
(五) ADO和ADO.net
微软提供了各种各样的数据访问技术, 从最初的ODBC到现在最新的ADO.net, 历经了DAO (Data Access Objects) 、RDO (Remote Data Objects) 、OLE DB、ADO (ActiveX Data Object) 等过程。
ADO是在OLE DB标准的基础上定义的一种面向对象、与语言无关的数据库应用编程接口。ADO被设计来继承微软早期的数据访问对象层, 包括RDO和DAO。与RDO、DAO等其它访问对象相比, ADO含有的对象更少, 更易于使用。ADO对象模型总共包括3个主要对象:Connection、Command和Recordset, 还有4个补充对象:Error、Parameter、Field和Property。使用这些对象用户可以很方便的完成连接数据源, 发出命令操作数据源, 以及对数据源返回的记录集的处理。
ADO是ASP (Active Server Pages) 内置的ActiveX服务器组件, 通过在web服务器上设置ODBC和OLEDB可连接多种数据库, 是对目前微软所支持的数据库进行操作的最有效和最简单的方法之一。
ASP.net是微软公司继ASP之后推出的新一代WEB应用程序开发技术。ASP.net中的数据库访问技术是通过ADO.net实现的。ADO.net名称起源于ADO, 但和ADO有着很大的区别。ADO可供数据应用程序作为外部包访问, 后跟与.net完全不兼容的模型——COM接口, 使用其服务的应用程序必须明确包含对它的引用。而.net应用程序被设计为共享单个模型, 把所有的库、方法和类集成为一个框架, 组织成逻辑命名空间, 并声明为公有, 允许希望使用它的任何应用程序来使用。ADO.net中包括两个核心组件:DataSet和.net数据提供程序。前者可用于多种不同的数据源、XML数据以及管理应用程序本地的数据。后者是一组包括Connection、Command、DataAdapter、DataReader对象在内的组件, 提供了对数据操作和对数据快速、只进、只读访问的方法。
ADO.net比ADO拥有更强大的功能, 为用户提供了更灵活的数据访问解决方案。ADO.net最重要的新特性是它能以断开连接的方式工作。这在以Web为中心的环境中显得特别重要, 永久连接很容易耗尽服务器资源, 导致性能瓶颈。ADO.net中的DataSet类是非连接存储和处理关系数据的基础。可以在连接数据存储时填充该对象, 并在断开和数据存储的连接后使用该对象, 然后再次连接数据存储, 根据需要将更改结果刷新到数据存储中。
第二个重要特性就是ADO.net对XML (Extensible Markup Language, 可扩展标记语言) 数据的支持。ADO 1.0和ADO 2.0都不支持XML格式, MSXML技术在ADO 2.1中开始应用, 但功能有限。直到ADO 2.5出现, ADO 2.1中XML的一些限制 (如分层记录集对象的保持) 才被取消, 但也只能读取名为高级数据表图 (Advanced Data TableGram, 简称ADTG) 专用架构的XML文档记录集。ADO.net中的DataSet使用XML来进行数据交换, 即DataSet中的关系数据可以和XML自动实现映射。同时由于ADO.net组件使用XML交换ADO.net数据库, 所以防火墙可以允许数据集通过。
第三, ADO中数据在内存中表示形式为记录集 (RecordSet) , 而在ADO.net中它则为数据集 (Dataset) 。记录集像单个表, 数据集是一个或多个表的集合。数据集内的表称为数据表, 明确地说是DataTable对象。如果数据集包含来自多个数据库表的数据, 它通常将包含多个DataTable对象。在ADO中, 使用MoveNext方法顺序扫描记录集的行。在ADO.net中, 行表示为集合, 因此可以像依次通过任何集合那样依次通过表, 或通过序号索引或主键索引访问特定行。另外, ADO.net不具有固有的游标对象, 而是包含提供传统游标功能的数据类。
ADO.net在ADO的基础上引入了重大的变化和革新, 这使ADO.net具有更好的性能、灵活性和可用性。
(六) PHP中访问数据库
PHP (Professional Hypertext Preprocessor) 是一种用于创建动态WEB页面的服务器端脚本语言, 融合了C、Java以及Perl语言的语法。用户可以混合使用PHP和HTML编写WEB页面, 当访问者浏览到该页面时, 服务器端PHP语言引擎会首先对页面中的PHP命令进行处理, 然后把处理后的结果连同HTML内容一起返回给访问端的浏览器。
使用PHP开发数据库应用程序最重要的特点就是具有十分强大的数据库操作功能, 可直接连接多种数据库, 并完全支持ODBC。PHP含有相当丰富的函数库, 只需借助某一个或某几个函数即可完成上载文件、存取数据库中的二进制图片数据、作图、XML解析等功能。这些功能在其它脚本技术中都需要引入专门的控件才可以实现。第二, PHP是GNU标准的自由软件, 不仅它是免费的, 与其配合使用极佳的Apache Server、Mysql数据库也都是免费的。第三, PHP还具有很好地跨平台性, 代码在Windows98、Windows NT、Linux、Unix和Macintosh等环境下均可以重用运行。
PHP也有其不足之处。PHP的技术体系不符合分布式应用体系, 缺乏多层结构支持。对于大负荷的网站, 只能使用分布式计算来解决问题。此外, PHP提供的数据库接口函数也不统一, 在访问数据库时不如ASP那么方便。
(七) 结束语
随着操作系统、WEB服务器、数据库等技术的迅速发展, WEB数据库访问技术也在不断地发展和完善。以上各种WEB数据库访问技术各有优缺点和适用领域, 开发者可以根据实际环境要求选择合适的方法。
参考文献
[1]刘近勇.Web数据库访问技术探析[J].邮电设计技术, 2006 (8) :43-47.
[2]徐国华.浅议Web数据库访问技术[J].太原大学学报, 2005, 6 (1) :52-54.
[3]朱二喜, 徐敏.ODBC和JDBC技术对比分析[J].中国科技信息, 2007 (2) :125-127.
[4]何山.ADO与ADO.net的比较分析[J].中国科技信息, 2007 (7) :100-102.
Web数据库 篇11
关键词:Server,Connection, RecordSet
ADO三大对象的关系
在ADO中, 3个主体对象connection,command和recordset可实现数据源的连接,数据的操作等应用.之间的关系是密切不可分的,应用connection对象与数据库服务器之间的连接,应用command对象向数据库发出数据查询信息,应用recordset对象从数据库中取得所需的记录集.由此可见,command对象必须信赖于connection对象,而recordset对象必须信赖于connection对象和command对象,connection对象必须信赖于数据库服务器和连接状况.实现数据库存操作方法多样,下面根据本人的教学经验总结如下一些好的编程方法供大家参考。
方法一、仅使用Connection对象实现数据库操作编程;
步骤:
1.创建一个connection对象;
set con=server.createobject("adodb.connection")
2.设置con对象的连接数据库字符串信息属性(connectionstring);
con.connectionstring="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=数据库路径"
3.使用open方法打开连接好的数据库;
con.open
4.定义好要执行的查询命令,检索命令或更新命令(插入,删除,修改),如果是查询, 检索命令语句则直接向下写到第7步结束;如果是更新命令语句则直接跳到第8,9步执行;
5.使用execute方法执行查询命令,得到数据集对象rs;
set rs=con.execute(“查询命令”)
6. 按要求输出查询到的数据集rs到WEB页面;
response.write
7.使用close方法关闭对象,并释放rs,con对象内存空间;
rs.close set rs=nothing
con.close set con=nothing
8. 使用execute方法执行更新命令;
con.execute("更新命令")
9.使用close方法关闭对象,并释放con对象内存空间;
con.close set con=nothing
举例1:应用方法一将数据表(book)中的数据信息取出,显示在界面中。Book表见附表1:
程序清单:
<% '建立数据源的链接
StrSQL="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+server.mappath("date.mdb")
set conn=server.createobject("ADODB.CONNECTION")'创建conn对象
con.connectionstring= StrSQL '指定数据链接
conn.open '打开数据库
sql="select * from book "'创建查询语句
set rs=conn.execute(sql)'执行查询语句
if not rs.eof then'判断是否存在记录,并输出rs
do while not rs.eof
%>
<% rs.movenext
loop
else response.write "没有记录!"
end if
%>
范例结果显示,见附表2:
方法二、RecordSet对象实现数据库操作编程过程;
步骤:
1.创建一个connection对象;
set con=server.createobject("adodb.connection")
2.设置con对象的连接数据库字符串信息属性(connectionstring);
con.connectionstring="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=数据库存路径"
3.使用con对象的open方法打开连接好的数据库;
con.open
4.创建一个recordset对象
set rs=server.createobject("adodb.recordset")
rs.activeconnection=con'連接数据库属性
rs.source="sql语句或存储过程或表名"'执行命令属性
rs.cursortype='游标属性
rs.locktype='锁定属性
5.使用rs对象的open方法取出数据到内存
rs.open
6.操作数据库;比如查询或更新(插入,删除,修改)操作;
rs.addnew, rs.delete, rs.update等操作;
7.使用close方法关闭对象,并释放rs,con对象内存空间;
rs.close set rs=nothing
con.close set con=nothing
举例2:应用方法二添加数据表(book)中的一条数据信息。Book表见附表1:
程序清单:
<%'建立数据源的链接
StrSQL="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+server.mappath("date.mdb")
set conn=server.createobject("ADODB.CONNECTION")
con.connectionstring= StrSQL
conn.open
sql="select * from book "'建立记录集对象
set rs=server.createobject("adodb.recordset")
rs.activeconnection=con'指定记录集连接数据库属性
rs.source=sql'执行命令属性
rs.cursortype=3'游标属性可前后移动
rs.locktype=3'锁定属性可读写
rs.open
rs.addnew'添加记录
rs("Name")="ASP程序员手册"
rs("Pice")=48
rs("Author")="李达"
rs("Cbsh")="人民邮电出版社"
rs("Nrjj")="学习ASP应用手册"
rs.update'更新到数据库
response.write "添加记录成功!"
%>
范例结果显示,见附表2:
结束语
本文主要针对读者要求具有ASP基础,了解ADO对象中常用的属性、方法。为了便于读者在较短时间内快速掌握ADO编程技巧,结合自己多年教学工作的实践经验,得出以上算法供大家掌握。使书写程序变得简单化了,层次化,条理清晰,步骤详尽易记忆。可以使读者直观,迅速掌握ADO数据操作对象实现程序开发。
附表1:应用范例用的数据库结构(book数据表结构)
字段值类型说明
ID自动编号主键
Name文本书名
Pice货币价格
Author文本作者
Cbsh文本出版社
Nrjj备注内容简介
附表2: (data数据库book表中数据记录)
IDNamePiceAuthorCbshNrjj
1ASP动态网站开发案例指导张喜平电子工业出版社55元网页程序开发教程
2ASP动态网站开发教程陈建伟清华大学出版社28元网页程序开发教程
3ASP程序员手册李达人民邮电48元学习ASP应用手册
参考文献:
[1].张喜平.夏跃伟.刘亚姝.ASP动态网站开发案例指导.电子工业出版社.2009.5
[2].赵增敏.朱粹丹.赵朱曦.ASP动态网页设计.电子工业出版社.2008.1
Web数据库 篇12
1 ASP.NET技术和ADO组件技术
(1) ASP.NET是当今开发交互式Web页面、Web数据库应用最强大的技术。它是位于服务器端的脚本运行环境。通过这种环境, 用户可以创建和运行动态的交互式Web服务器应用程序。如图1所示。
图1说明了当用户在浏览器上填好表单并向Web服务器提出请求时, 可以要求在站点服务器上执行一个表单所设定的应用程序, 该应用程序分析表单的输入数据, 根据不同的数据内容将相应的执行结果以HTML的格式传送给浏览器。
(2) ADO是一个ASP.NET内置的Active X服务器组件, 是一项容易使用并且可扩展的将数据库访问添加到Web页的技术。可以用ADO去编写脚本以便连接到ODBC兼容的数据库和OLE DB兼容的数据源, 可以把它与ASP.NET结合起来, 建立提供数据库信息网页内容, 对数据库查询、更新、插入、删除等操作。
图2说明了要让ADO对象能够存取数据库, 最重要的东西就是OLE DB驱动程序及ODBC驱动程序。对任何一种数据库来说, 必须具备其对应的OLE DB驱动程序或ODBC驱动程序, ADO对象才能够进行存取。
2 网上成绩查询系统的设计
2.1 系统说明
网上成绩查询系统需要根据用户的输入条件 (如学生的学号) 从所有登记的成绩信息中查找出符合条件的成绩信息。如在客户端浏览器的查询表单中输入学号;单击“提交查询”按钮, 成绩查询系统就可以从Web数据库中查找该学号成绩并显示输出。
2.2 用户窗口的设计
(1) 查询窗口设计如图3所示
(2) 结果输出窗口的设计如图4所示。
查询结果为:
2.3 基本设计方法
使用ADO访问数据库的ASP.NET脚本程序应该使用Connection对象建立并管理与远程数据库的连接, 使用Command对象提供灵活的查询, 而使用Recordset对象作为数据的主要接口、访问数据库查询所返回的结果。这三者是ADO中最基本也最核心的对象。ADO可使用Vbscript语言来控制对数据库的访问, 以及查询结果的输出显示。
(1) 定义数据库组件, 使用“Server.Create Object”建立连接的对象:Set Conn=Server.Create Object (“ADODB.Connection”)
(2) 用“Open”打开待访的数据库:
(3) 设立采用ADO中的Recordset的方法:
(4) 设定SQL语句, 查询访问数据库的动作:
(5) 关闭结果集对象, 断开与数据库的连接:
3 优化查询Web数据库
由于目前大部分网络都采用了Web数据库, 要提高Web数据库的响应速度, 建立高性能的Web站点, 很大一部分取决于ASP.NET与数据库之间的处理性能, 下面将介绍优化Web数据的方法及实现。
3.1 ASP.NET代码优化
(1) 声明Vbscript变量
由于ASP.NET中已经模糊了变量类型的概念, 所以在进行ASP.NET与Vbscript交互的过程中, 往往忽略了声明Vbscript的变量, 这样加重了服务器的解析负担, 进而影响服务器的响应请求速度。鉴于此, 在使用变量时应强制进行变量声明。实现方法是在ASP.NET程序行首放置<%option explicit%>。
(2) 清空对象
当使用完对象后, 首先使用Close方法来释放对象所占用的系统资源, 然后设置对象值为“nothing”释放对象占用内存。
(3) 尽量使用case进行条件选择
在进行条件选择的时候, 尽量使用case语句, 避免使用if语句。使用case语句, 可以使程序流程化, 执行起来比if语句来的快。
3.2 SQL语句优化
多数情况下, 经常使用索引来加快地遍表, 查找时主要根据定义的索引来提高性能。但是, 如果在SQL语句的where子句中写的SQL代码不合理, 就会造成查找速度有所下降。因此, 在进行SQL语句编写时应注意以下问题:
(1) Is Null与Is Not Null
不能用Null作索引, 任何包含Null值的列都将不会被包含在索引中。即使索引有多列这样的情况下, 只要这些列中一含有Null, 该列就会从索引中排除。
(2) 带通配符 (%) 的like语句
当在查询SQL语句中通配符 (%) 在搜索词首出现是时, 这时由于搜索词所在字段不学作索引项使用, 因此, 会降低查询速度, 所以在使用通配符 (%) 时, 尽量使其出现在字符其他位置。
(3) order by语句
order by语句决定了返回的查询结果是正序还是反序, order by语句对要排序的列没有什么特别限制, 任何在order by语句的非索引项或者有计算表达式都将会降低查询速度, 因此, 在使用order by语句时尽量使用索引。
(4) Not运算符
在查询时, 经常在where子句使用一些逻辑表达式, 如大于、小于、等于及不等于等等, 也可以使用and、or及not。Not可用来任何逻辑运算符号取反。例如…………where not (name=”tom”) , 如果要使用Not, 则应在取反的短语前面加上括号, 并在短语前面加上Not运算符。Not运算符包含在另外一个逻辑运算符中, 这就是不等于<>号, 即Not (name=”tom”) 相当于name<>”tom”, 由于在使用Not时不能使用索引的, 因此会降低速度, 所以在使用时尽量避免使用Not。
3.3 在ASP.NET中优化数据库
(1) 使用Connection Pool机制
在数据库处理中, 资源花销最大的是建立数据库连接, 而且用户还会有一个较长的连接等待时间。若每一个用访问时, 都重新建立连接, 不仅用户要长时间等待, 而且系统有可能会由于资源消耗过大而停止响应。如果能够重用以前建立的数据库连接, 而不是每次访问时都重新建立连接, 则可以很好地解决这些问题, 从而提高整个系统的性能。在IIS+ASP.NET处理体系中, 采用了Connection Pool机制来保证这一点。
为了正确使用Connection Pool机制, 必须注意以下几点:
每次数据库连接串参数必须相同, 否则会被认为是不同的连接而重新去连接数据库, 而不是使用缓冲池中的连接。最好的做法是将连接串存储在Application变量中, 所有的程序在建立连接时使用Application变量的值。
为了更好地使用和维护连接缓冲池, 建议在程序中使用以下的方法对数据库连接进行操作, 因为隐式使用数据库连接时不能利用缓冲池的机制:
显式创建连接对象:
建立数据库连接:conn.open Application (“connection_string”)
显式关闭连接对象:conn.close
(2) 利用直接的OLE DB驱动程序
在ASP.NET中, 通过ADO可以使用两种方式连接数据库, 一种是传统的ODBC方式, 一种是OLE DB方式。由于ADO是建立在OLE DB技术上的, 为了支持ODBC, 必须建立相应的OLE DB到ODBC的调用转换 (如MS OLEDB provider for ODBC) 。而使用直接的OLEDB方式 (如MS OLEDB provider for Access, SQL, Oracle) , 则不需转换, 从而提高处理速度, 同时, 还能利用OLE DB的特性。
(3) 用时创建用完释放
在前面也提到过, ADO对象是非常消耗资源的, 因此只在用到ADO对象时才创建, 用完后马上释放, 程序如下:
4 总结
ADO和ASP.NET的结合, 从长远来看, 其ASP.NET和组件对象的配合使用无疑是一种引人入胜的新技术, 更重要的是它在开发用户/服务器分布式应用系统中将会产生极好的效果。使用ASP.NET编程是很方便的, 由于ADO跨越了ODBC, 形成具备多线程处理能力的数据库操作方式, 并且是在服务器上运行, 对客户端没有特殊要求。在编写代码时, 必须要以Internet的思路设计和编写程序, 同时也应注意对程序的优化, 并利用上述介绍的解决方法, 会极大地提高网站的响应速度。
参考文献
[1]王亚杰.基于C/S和B/S的信息系统开发与研究[J].沈阳大学学报, 2002 (02) :45-47.
[2]王伟雄.浅谈三层体系结构应用系统[J].价值工程, 2010 (23) :12-13.
[3]赵志鹏.基于WEB的三层体系结构技术[J].辽宁税务高等专科学校学报, 2005 (04) .
[4]路遥.基于三层架构下的数据访问研究和应用[D].长春理工大学, 2009.
[5]张友生.C/S与B/S混合软件体系结构模型[J].计算机工程与应用, 2002 (23) :138-140.
[6]李冰颖.基于C/S与B/S混合模式的高校教学管理信息系统的设计[J].南昌航空工业学院学报, 2004, 18 (4) :57-60.
[7]程罗德, 刘成安.高校数字化校园信息门户的设计与实现[J].电脑知识与技术, 2008, 13:689.
【Web数据库】推荐阅读:
Web数据库查询09-03
Web数据抽取07-17
Web数据集成07-03
ASP技术WEB数据库分析论文10-11
Web数据挖掘研究07-18
Web医疗咨询数据05-28
Web数据管理研究10-01
大数据时代数据库技术09-10
数据库07-16
基于关系数据库的地籍空间数据存储结构07-18