您的位置: 首页 N搜咨询 文章阅读 ASP技术访问WEB数据库
打印本页 放大字体 关闭本页
ASP技术访问WEB数据库

作者:N搜网友 编辑:N搜网 录入:N搜网 来源:N搜网络
录入时间:2006-9-29 更新时间:2006-9-29 点击次数:492
主标题:ASP技术访问WEB数据库
副标题:ASP技术访问WEB数据库
短标题:ASP技术访问WEB数据库
 
一. 访问WEB数据库的多种方案  
   目前在WINDOWS环境下有多种访问WEB数据库的技术,主要有:  
   1.公共网关接口CGI(Common Gateway Interface)  
   CGI是较早实现的技术。适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开发成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。  
   2. INTERNET数据库连接器IDC(Internet Database Connector)  
   IDC集成在ISAPI(Internet Server API)中,充分利用了DLL技术,易扩充,但编程较CGI更为复杂,只适用于小型数据库系统。  
   3. 先进数据库连接器ADC(Advance Database Connector)  
   ADC提供了ActiveX Control来访问数据库,它的主要特点是数据查询由用户端浏览器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢,只适用于特别频繁的数据库查询操作。  
   4. JAVA/JDBC语言编程  
   JAVA语言是一种面向对象、易移植、多线程控制的语言,可通过JDBC去连接数据库。用JAVA/JDBC编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度还不理想,目前无法建立高效、高速的应用。  
   5. 动态服务器页面ASP(Active Server Page)  
   ASP是微软公司最新推出的WEB应用开发技术,着重于处理动态网页和WEB数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问WEB数据库的最佳选择。  
   二. ASP简介  
   1.ASP访问数据库的原理  
   ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。  
   当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript 或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。  
   由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程序不会泄密,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。  
   2.ASP页面的结构:  
   ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成:  
   1) 标准的HTML标记:所有的HTML标记均可使用。  
   2) ASP语法命令:位于<% %> 标签内的ASP代码。  
   3) 服务器端的include语句:可用#include语句调入其它ASP代码,增强了编程的灵活性。  
   4) 脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能,用户也可安装其它脚本语言,如Perl、Rexx等。  
   3.ASP的运行环境  
   目前ASP可运行在三种环境下。  
   1) WINDOWS NT server 4.0运行IIS 3.0(Internet Information Server)以上。  
   2) WINDOWS NT workstation 4.0运行Peer Web Server 3.0以上。  
   3) WINDOWS 95/98运行PWS(Personal Web Server)。  
   其中以NT server上的IIS功能最强,提供了对ASP的全面支持,是创建高速、稳定的ASP主页的最佳选择。  
   4.ASP的内建对象  
   ASP提供了六个内建对象,供用户直接调用:  
   1) Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。  
   2) Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。  
   3) Request对象:从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法。  
   4) Response对象:服务器将输出内容发送到用户端。  
   5) Server对象:提供对服务器有关方法和属性的访问。  
   6) Object Context对象:IIS 4.0新增的对象,用来进行事务处理。此项功能需得到MTS(Microsoft Transcation Server)管理的支持。  
   5. ASP的主要内置组件:  
   1) Ad Rotator组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW上日益重要的广告服务。  
   2) Browser Capabilities组件:确定访问WEB站点的用户浏览器的功能数据,包括类型、性能、版本等。  
   3) Database Access组件:提供ADO (ActiveX Data Objects)来访问支持ODBC的数据库。  
   4) File Access组件:提供对服务器端文件的读写功能。  
   5) Content Linking组件:生成WEB页内容列表,并将各页顺序连接,用于制作导航条。  
   此外,还可安装Myinfo、Counters、Content Rotator、Page Count等组件,用户也可自行编制Actiive组件,以提高系统的实用性。  
   6. Database Access组件ADO  
   WWW上很重要的应用是访问WEB数据库,用ASP访问WEB数据库时,必须使用ADO组件,ADO是ASP内置的ActiveX服务器组件(ActiveX Server Component),通过在WEB服务器上设置ODBC和OLEDB可连接多种数据库:如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。  
   ADO组件主要提供了以下七个对象和四个集合来访问数据库。  
   1) Connection对象:建立与后台数据库的连接。  
   2) Command对象:执行SQL指令,访问数据库。  
   3) Parameters对象和Parameters集合:为Command对象提供数据和参数。  
   4) RecordSet对象:存放访问数据库后的数据信息,是最经常使用的对象。  
   5) Field对象和Field集合:提供对RecordSet中当前记录的各个字段进行访问的功能。  
   6) Property对象和Properties集合:提供有关信息,供Connection、Command、RecordSet、Field对象使用。  
   7) Error对象和Errors集合:提供访问数据库时的错误信息。  
   三. ASP访问数据库步骤  
   在ASP中,使用ADO组件访问后台数据库,可通过以下步骤进行:  
   1. 定义数据源  
   在WEB服务器上打开"控制面板",选中"ODBC",在"系统DSN"下选"添加",选定你希望的数据库种类、名称、位置等。本文定义"SQL SERVER",数据源为"HT",数据库名称为"HTDATA",脚本语言采用Jscript。  
   2,使用ADO组件查询WEB数据库  
   1) 调用Server.CreateObject方法取得"ADODB.Connection"的实例,再使用Open方法打开数据库:  
   conn = Server.CreateObject("ADODB.Connection")  
   conn.Open("HT")  
   2) 指定要执行的SQL命令  
   连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有"X"的记录  
   sqlStr = "select * from signaltab where code like ’%X%’"  
   rs = conn.Execute(sqlStr)  
   3) 使用RecordSet属性和方法,并显示结果  
   为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据。  
   rs = Server.CreateObject("ADODB.RecordSet") 
   rs.Open(sqlStr,conn,1,A) 
   注:A=1读取 
   A=3 新增、修改、删除 
   在RecordSet组件中,常用的属性和方法有: 
   rs.Fields.Count: RecordSet对象的字段数。 
   rs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1 
   rs(i): 第i个字段的数据,i为0至rs.Fields.Count-1 
   rs("字段名"): 指定字段的数据。 
   rs.Record.Count:游标中的数据记录总数。 
   rs.EOF: 是否最后一条记录。 
   rs.MoveFirst: 指向第一条记录。 
   rs.MoveLast: 指向最后一条记录。 
   rs.MovePrev: 指向上一条记录。 
   rs.MoveNext: 指向下一条记录。 
   rs.GetRows: 将数据放入数组中。 
   rs.Properties.Count:ADO的ResultSet或Connection的属性个数。 
   rs.Properties(item).Name:ADO的ResultSet或Connection的名称。 
   rs.Properties: ADO的ResultSet或Connection的值。 
   rs.close(): 关闭连接。  
   4) 关闭数据库  
   conn.close()  
   四.查询WEB数据库举例  
   下面这段示例程序是访问SQL SERVER数据库的 signaltab表,表中有三个字段:code(代码字段,字符型,3位),class(分类字段,字符型,10位),memo(备注字段,字符型,20位)。程序中数据源DSN:HT、用户名:client、口令:passwd。  
   屏幕输入页面input.asp  
   <% @ language=javascript %> 
   <html> 
   <head> 
   <title>请输入查询条件PLEASE INPUT CONDITION</title> 
   </head> 
   <form action=shotquery.asp METHOD="post" target="_self"> 
   <input TYPE="text" size=6 maxlength=3 NAME=signalCode VALUE="代码"> </font></p> 
   </center></div><p></p> 
   <input LANGUAGE="JavaScript" TYPE="submit" VALUE="确认" NAME="B1" 
    
   <input TYPE="reset" VALUE="清除"NAME="B2">  
    
   <input LANGUAGE="JavaScript" TYPE="button" NAME="B3" VALUE="返回" 
   ONCLICK="window.history.back()">  
   </font></p> 
   </center></div> 
   </form> 
   </body> 
   </html> 
   数据库处理程序shotquery.asp  
   <!--#include virtual="/master/lib.inc"--> 
   <script language=javascript runat=server> 
   var signalCode=Request.Form("signalCode"); 
   dbConn = Server.CreateObject("ADODB.Connection"); 
   dbConn.open("DSN=HT;UID=client;PWD=passwd");  
   rs = Server.CreateObject("ADODB.RecordSet"); 
   var sqlStr = "select * from signaltab order by code"; 
   rs.open(sqlStr,dbConn,1); 
   if(rs.RecordCount < 1) { 
   Response.write("<p> 无符合条件记录</p>"); 
   Response.write("<p><form> <input type=’button’ value=’ 返回’ onclick=’window.history.back()’ name=’b1’></form></p>"); 
   } 
   else { 
   Response.write("<P><center><B>数据查询结果</B></center></P>"); 
   Response.write("<tr><td><b>代码</b></td><td><b>分类</b></td><td><b>备注</b></td>"); 
   for(var i = 1;i <= rs.Pagesize;i++) { 
   if(!rs.Eof) { 
   Response.write("<td><span style=’font-size:9t’>"+rs("code")+"</span></td>"); 
   Response.write("<td><span style=’font-size:9t’>"+rs("class")+"</span></td>"); 
   Response.write("<td><span style=’font-size:9t’>"+rs("memo")+"</span></td>"); 
   Response.write("</tr>"); 
   rs.MoveNext(); 
   } 
   else break; 
   } 
   Response.write("</table></form>"); 
   rs.close(); 
   dbConn.close(); 
   } 
   </script>
N搜网-中国网上商店商品服务搜索门户]:[本文章由N搜网于2006-9-29录入系统,网址:www.nsall.com

打印本页 放大字体 关闭本页
 
 
相关主题文章
一些常用的正则表达式 紫雨轩IIS URL 重写组件 V1.0 [组图]
17种正则表达式 IIS实现ASP,CGI,PERL和PHP+MYSQL [组图]
WEB打印大全 关闭窗口时保存数据的办法
17种正则表达式 用正则解析图片地址,并利用XMLHTTP组件将其保存
利用ASP+JMAIL进行邮件群发的新思路 用ASP实现对ORACLE数据库的操作
ASP操作Excel技术总结 LCID地区代码
实现搜索结果的关键词变色标注的程序 IIS6.0下ASP的新增功能
浅谈如何建立三层体系结构的ASP应用程序 判断Cookies是否处于开启状态
验证码的程序及原理 在线实时开通WEB及FTP源程序 [组图]
vbs(asp)的栈类 用ASP打开远端MDB文件的方法
巧用ASP生成PDF文件 利用FSO取得BMP,JPG,PNG,GIF文件信息
远程获取内容,并将内容存在本地电脑上,包括任何… 三种禁用FileSystemObject组件的方法
js的单元格颜色间隔 一个不需要第三方组件,可实现华简单图形的类
asp实现k线图(在线) 用InstallShield 进行 ASP 软件的打包和自动安装…
如何在服务器端调用winzip命令行对上传的多个文件… 构建免受 FSO 威胁虚拟主机 [组图]
如何正确显示数据库中的图片 远程注册自己的组件
asp提高首页性能的一个技巧 Flash和Asp数据库的结合应用
ASP小偷(远程数据获取)程序的入门教程 [组图] 一个采集入库生成本地文件的几个FUCTION
asp编写的加密和解密类 不能使用asp标记的时候的一个解决办法
ASP无组件上传进度条解决方案 ASP中也能解压缩rar文件 [组图]
ASP做象资源管理器的树形目录 ASP文件上传原理分析及实现实例
一个通用的保护ASP系统的方法 编写安全的ASP代码
ASP ActiveX 组件 连接数据库查询手册
用ASP实现在线压缩与解压缩 ASP能读写注册表
xmlHTTP技术资料 ASP小偷(远程数据获取)程序入门教程
ASP网站漏洞解析及黑客入侵防范方法 轻松实现将上传图片到数据库
ASP编码优化 最简洁的多重查询的解决方案
无组件实现文件上传/下载 ASP漏洞全接触-高级篇
ASP漏洞全接触-入门篇 ASP技术访问WEB数据库
自动获得远程图片 #Writ 获得远程的文件,获得远程HTML文件源码
CDONTS和Jmail的使用 使用ASP生成图片彩色校验码
用ASP制作饼图、柱状图等 [组图] ASP生成静态页面的方法
asp组件上传 ASP中利用OWC控件实现图表功能详解 [组图]
用asp自动解析网页中的图片地址,并将其保存到本… 常用ASP自定义函数集
在ASP中用“正则表达式对象”来校验数据的合法性… ASP中正则表达式的应用
ASP面向对象编程探讨及比较 在ASP文件中调用DLL
C++中的虚函数(virtual function) C语言初学者入门讲座 第二讲 数据类型(1)
C语言初学者入门讲座 第二讲 数据类型(2) C语言初学者入门讲座 第二讲 数据类型(3)
利用VC++编写Windows95的CPL组件 调试Release版本应用程序
利用VC++开发ASP图像处理组件 如何在ASP.Net 中把图片存入数据库
用ASP实现的2000年倒记时程序 用VB6分离出文本框的单词
在ASP中用“正则表达式对象”来校验数据的合法性… 用ASP实现网上考试系统
在ASP中利用“正则表达式” 对象实现UBB风格… [组图] 在Asp.Net中从sqlserver检索(retrieve)图片
消息队列在VB.NET数据库开发中的应用 在PowerBuilder中调用ChooseColor函数
在PB中应用灵活多样的排序 用C#编写获取远程IP,MAC的方法
如何在ASP程序中打印Access报表 用Vb.net实现自定义界面
使用C#编写扩展存储过程 Java平台上的CRM系统
VB.NET开发扫描客户端服务工具 Visual Basic.Net连各种数据库的几种方法
JSP数据库连接方式总结 如何选购虚拟主机
什么是虚拟主机? 虚拟主机优点有那些?
 
 
 
本站关键字:网上商店商品服务大全 网上购物导航 在线购物搜索引擎 网店比较购物 网络商城 特色网上超市商店 网上网络开店购物