数据库WWW对大量数据查询的一种实现

www qqcom  时间:2021-02-08  阅读:()

WWW对大量数据查询的一种实现

目录

1 三层体系结构的数据库访问技术

一种通用的三层客户端/服务器体系结构如下图1所示

2 问题的提出

3 实际解决方案

1 Piroz Mohseni著

2 Leonid bragiki

3 沈文智

正文

摘要 企业通过服务和数据库技术相结合的办法构建一种三层客户端服务器的体系结构用户通过INTERNET浏览企业信

息但是当浏览大量数据库数据时 网络连接常因速度缓慢或因超时而中断。本文介绍了WWW数据库访问技术通过对各种技术进行分析和比较针对新华书店发行集团网站设计的需求采用ASP技术实现数据的分页传输

关键词ASP ADO三层体系结构客户端/服务器分页

目前大多数企业通过服务和数据库技术相结合的办法构建一种三层客户端服务器的体系结构 即客户端浏览器/中间服务器

WEB服务器 /数据库服务器B/W/D 利用INT ERNET向世界各地发布企业的商业信息。用户为了获得企业的商品信息通过浏览器访问企业的网站某些情况下用户所需的信息量巨大此时企业的网页传输时间漫长或连接超时用户因此放弃浏览信息给企业造成一定的经济损失这当然不是企业所希望的。为了解决这种大数据量的发布问题首先了解一下三层体系结构是怎样处理数据库数据的。

1 三层体系结构的数据库访问技术

一种通用的三层客户端/服务器体系结构如下图1所示这种体系结构与传统的二层C结构比较最大的优点就是将网络通信和数据库操作分离开来并在客户端和WEB服务器间使用多路复用技术减轻了数据库服务器CPU的负载加快数据的处理能力。

图1三层体系结构

在开发基于WWW的数据库应用中关键技术之一在于WEB服务器与数据库服务器之间的连接技术。 目前数据库连接技术可归纳为以下几个方面。

? 基于CGI 通用网关接口规范编写的CGI程序该程序既要处理WEB服务器与浏览器之间的信息传输又要处理W EB服务器与数据库的连接、查询和基于查询结果的H TML页面的产生。

? 利用A P I 应用程序接口对WEB服务器的功能进行扩展这种方法较灵活但编程人员需具有一定的编程技巧对AP I详细了解 以及对C++等语言的熟练掌握 因此开发周期长成本较高。 目前较流行的AP I有MICROS OFT公司的I SAP I和NETSCAPE公司的AP I。

? 利用J DBC进行数据库连接采用JA VA语言进行编程 由于J AVA具有较为严格的安全机制 同时它实现了跨平台性 因此它是一种较为热门的技术但JAVA与C++相似开发效率不是很理想。

? 利用ASP ACTIVE SERVER PAGES技术 ASP技术基于微软的DCOM 分布式COM标准是微软公司提供的一种服务器端脚本支持环境它通过ADO ACTIVEX DATA OBJECT控件的方式来处理与数据库的连接。

由于ASP技术开发周期短成本低对控件的支持可以开发出较为理想的应用所以 ASP得到广泛的应用。 ASP文件是以.asp为扩展名的文本文件这个文本文件可以包括下列部分文本、 HTML标记、 ASP脚本命令。 ASP文件存放在WEB服务器相应的目录中当客户浏览器从

WEB服务器上请求.asp文件时 ASP脚本开始运行将运行结果和.asp中的静态部分组合成标准的HT ML格式传输给客户端浏览器。 A SP对数据库的访问是通过ADO对象来实现的它把数据库查询结果放在HTML页中传给浏览器过程如下图2示。鉴于ASP的优点采用它来解决大容量数据库的访问。

图2 .asp文件处理过程

2 问题的提出

前面已经提到客户端访问企业网站时从数据库中查询出大量数据传送给客户端易造成连接超时而中断传输。作者在开发某新华书店发行集团网站中就遇到类似的情况 由于数据库中书目表记录多达6万多条而在发行行业中有一种分类法称为十大类分类法平均每类书目达五六千种。这样 当各地分销商查询某一类书目时在服务器端采用ASP技术将查询结果存于ADO对象库的RECORDS ET对象中然后将查询结果生成HT ML格式传输给分销商的浏览器。我们可以计算一下每条记录长度为250字节查询一类书目就需至少传输

250*5000即1250K字节的数据通常情况下 网络会因超时而中止连接。因此能否解决这种情况关系到企业网站的生存对其他类似情况也具有实际借鉴意义。

3 实际解决方案

在新华书店发行集团的网站开发中一方面为了避免由于数据整体传送时间过长而导致的断连另一方面为了满足用户浏览数据的局部

性要求故将数据化整为零采用分页技术来加快数据的传输。在访问WEB服务器时有两个因素限制了网页的连接时间一是数据库的查询操作另一个是网络传输的数据量。在数据库中的查询可以通过建立索引来解决例如对前面提到的书目表按十大类字段进行索引这样大大加快了数据库查询速度。为了减少网络传输数据量采用分页传输的技术例如客户端查询出五千多条记录可以一次仅传输二十条记录这样加快网页的连接时间就不会因超时而中断。分页技术用onepage.asp脚本实现部分代码如下set Conn=Server. ("n") ‘连接ODBC

Conn.Open "xhsd" ” sa”  ” hxrjb1”

 ‘生成sql语句set =Server.CreateObject ("adodb.recordset") ‘查询结果存于

.Open sql Connset session("") =

首先通过A SP的内置对象SERVER创建一CONNEC T I ON对象conn并将其与指定的数据库关联通过该对象的open方法打开。接着可根据系统的实际需求构造满足所需数据的SQL语句然后再通过SERVER对象创建一RecordSet对象并由的方法open取得数据库记录 同时将保存在Session中 以供其他页面使用。为了计算数

据记录分多少页必须先定义每页显示的记录数和记录的总数。代码中使用变量Session  “PageSize” 标志每页记录数 Session

 “PageCount” 标志分页数。下面一段代码功能为显示某一页的记录这一段代码为分页显示的核心代码。

.MoveFi t

.Move (page-1)*Sess ion( “PageSi ze “for i=1 to Session( “PageSize “

Respoe.Write "for j=0 to -1

Respoe.Write "" & .Fields(j) .Value & "next

Respoe.Write "

.MoveNextif .EOF thenexit forend if

next

Respoe.Write "

Respoe.Write "

代码通过对象的方法Move将记录指向由page确定的那一页的第一条记录然后用循环语句依次列出每条记录。为了定位在某一页必须使用一参数将页码信息传给服务器此处使用带参数的超级链接来实现。具体代码如下if page<>1 then

Respoe.Write "第一页"

Respoe.Write"上一页"end ifif page<>Session( “PageCount” ) then

Respoe.Write "下一页"

Respoe.Write "最后一页"end if

Respoe.Write "

参考文献

1 Piroz Mohseni著 Web数据库开发人员指南.机械工业出版社。

2 Leonid bragiki Matthew Powell著 MicrosoftInternet Information Server 4.0使用大全.人民邮电出版社。

3 沈文智候勇等著 Microsoft IIS网页技术.人民邮电出版社。

Inquire to Mass Data In World Wide Web

Abstract The enterprise desig a three tier architecture ofclienterver through integrating the technology of databaseaccess and www service. Then user may browse all kinds ofenterprise’ s information in Internet. Because of limits ofbandwidth and trafe of mass data the link of networkusually breaks. This paper discusses the technologies ofdatabase access and analyzes these technologies. By thedemand of XinHua BookStore Publishing Group’ s website ASPpaging technology is used to tramit mass data。

Keyword Activex Server Pages ADO Three Tier

Architecture Clienterver Paging

3元/首月香港便宜vps究竟是什么货。

便宜的香港vps多少钱?现在国外VPS主机的价格已经很便宜了,美国VPS主机最低一个月只要十几元,但同样免备案的香港VPS价格贵不贵呢?或者说便宜的香港VPS多少钱?香港vps主机价格要比美国机房的贵一些,但比国内的又便宜不少,所以目前情况是同等配置下,美国VPS比香港的便宜,香港VPS比国内(指大陆地区)的便宜。目前,最便宜香港vps低至3元/首月、18元/月起,今天云服务器网(www.yunt...

EdgeNat 新年开通优惠 - 韩国独立服务器原生IP地址CN2线路七折优惠

EdgeNat 商家在之前也有分享过几次活动,主要提供香港和韩国的VPS主机,分别在沙田和首尔LG机房,服务器均为自营硬件,电信CN2线路,移动联通BGP直连,其中VPS主机基于KVM架构,宿主机采用四路E5处理器、raid10+BBU固态硬盘!最高可以提供500Gbps DDoS防御。这次开年活动中有提供七折优惠的韩国独立服务器,原生IP地址CN2线路。第一、优惠券活动EdgeNat优惠码(限月...

丽萨主机122元/每季,原生IP,CN2 GIA网络

萨主机(lisahost)新上了美国cn2 gia国际精品网络 – 精品线路,支持解锁美区Netflix所有资源,HULU, DISNEY, StartZ, HBO MAX,ESPN, Amazon Prime Video等,同时支持Tiktok。套餐原价基础上加价20元可更换23段美国原生ip。支持Tiktok。成功下单后,在线充值相应差价,提交工单更换美国原生IP。!!!注意是加价20换原生I...

www qqcom为你推荐
ptrPTR指的是什么?邮箱怎么写邮箱地址怎么写无线路由器限速设置无线路由器怎么设置限速邮箱打不开怎么办我的邮箱打不开怎么办万网核心代理哪里可以注册免费代理?eset最新用户名密码eset smart security3.0.621.0最新用户名和密码怎么找arm开发板新手入门应如何选择 ARM 开发板?如何建立自己的网站怎么创建自己的网站lockdowndiphone4s 完美越狱5.1.1时出现Could not connect to lockdownd。求救啊!!2012年正月十五2012年正月十五 几月几号
美国主机空间 过期域名 日本vps 北京vps 工信部域名备案 sugarhosts stablehost 国外php主机 java主机 外国空间 512m 服务器cpu性能排行 12306抢票助手 ev证书 免费防火墙 傲盾官网 国外ip加速器 阿里云免费邮箱 云服务器比较 群英网络 更多