ASP技术访问WEB数据库
- 格式:doc
- 大小:30.50 KB
- 文档页数:10
用ASP连接数据库的几种方法用ASP连接DBF、DBC、MDB、Excel、SQL Server型数据库的方法:一、ASP的对象存取数据库方法在ASP中,用来存取数据库的对象统称ADO〔Active Data Objects〕,主要含有三种对象:Connection、Recordset 、CommandConnection:负责打开或连接数据Recordset:负责存取数据表Command:负责对数据库执行行动查询命令二、连接各数据库的驱动程序连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦。
驱动程序适用数据库类型Microsoft.Jet.OLEDB.4.0 MdbMicrosoft Access Driver AccessMicrosoft dBase Driver DbaseMicrosoft Excel Driver ExcelMicrosoft Visual FoxPro Driver DbcSQLOLEDB.1 SQL srver7.0而我们在一般情况下使用Access的数据库比较多,在这里我建议大家连接Access数据库使用下面的方法:dim connset conn = server.createobject("adodb.connection")conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " &server.mappath("../db/bbs.mdb")其中../db/bbs.mdb是你的数据库存放的相对路径!如果你的数据库和ASP文件在同一目录下,你只要这样写就可以了:dim connset conn = server.createobject("adodb.connection")conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.map path("bbs.mdb")有许多初学者在遇到数据库连接时总是会出问题,然而使用上面的驱动程序只要你的数据库路径选对了就不会出问题了ASP连接数据库的5种方法第一种 - 这种方法用在ACCESS中最多strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _& Server.MapPath("aspfree.mdb")set conn = server.createobject("adodb.connection")conn.open strconn第二种-这种方法用在SQL SERVER中多strconn = "Driver={SQL Server};Description=sqldemo;SERVER=127.0.0.1;" _ &"UID=LoginID;Password=;DATABASE=Database_Name"set conn = server.createobject("adodb.connection")conn.open strconn第三种strconn="Driver={Microsoft Access Driver(*.mdb)};" _&"DBQ=F:\Inetpub\wwwroot\somedir\db1.mdb;DefaultDir=" _&"f:\Inetpub\wwwroot\somedir;uid=LoginID;" _&"pwd=Password;DriverId=25;FIL=MSAccess;"set conn = server.createobject("adodb.connection")conn.open strconn第四种运用系统数据源The following uses a Data Source Name: Exampleset conn = server.createobject("adodb.connection")conn.open "Example"第五种运用ODBC数据源,前提是你必须在控制面板的ODBC中设置数据源set rs = server.createobject("adodb.recordset")rs.open "tblname", "DSNName", 3, 3 第一种 - 这种方法用在ACCESS中最多strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _& Server.MapPath("aspfree.mdb")set conn = server.createobject("adodb.connection")conn.open strconnASP访问数据库的方式有哪些?在ASP中可以通过三种方式访问数据库:1、IDC〔Internet Database Connector〕方式;2、ADO〔ActiveX Data Objects〕方式;3、RDS〔Remote Data Service〕方式。
浅谈ASP技术在WEB开发中的应用作者:金晶来源:《职业·中旬》2009年第11期WWW是目前Internet上发展最快的领域,也是Inernet网上最重要的信息检索手段。
早期的WEB页面主要是用来传递静态的HTML文档,后来由于CGI接口、VBScript和JavaScript语言的引入,特别是近几年发展起来的ASP技术,使得WEB页面可以方便传播动态信息。
借助ASP 技术,可以设计出具有声音、动画、图形、图像和各种特殊效果的WEB页面,以及方便的访问数据库。
一、ASP技术1.ASP工作原理ASP,是Active Server Pages的缩写,即“服务器端动态网页”。
它是基于WEB的一种编程技术,能够把HTML文件、脚本命令以及COM组件组合在一起,形成一个能够在服务器端运行的动态WEB应用程序,并能够按照用户的要求制作出标准的HTML页面传递给客户端浏览器。
有了ASP,就不必担心用户的浏览器是否能够读懂动态网页中所编写的代码,因为所有的程序都在服务器端执行。
当程序执行完毕后,服务器端执行的结果返回给客户端浏览器,这样就减轻了客户端浏览器的负担,大大提高了交互的速度。
2.ASP的运行环境目前,ASP可运行在以下三种环境:Windows NT(2000 Server)+IIS4.0(Internet Information Server)以上;Windows NT workstation +Peer Web Server;Windows95/98+PWS(Personal Web Server)。
3.ASP文件的建立ASP的程序代码简单、通用,文件名由.asp结尾,通常由四个部分构成:标准的HTML标记;ASP语法命令:位于<%%>之间;服务器端的include语句;脚本语言。
4.ASP的内置对象在面向对象编程中,对象是具有属性(数据)和方法(行为方式)的实体。
ASP中提供了六个内置对象供用户直接调用,它们分别是:Application对象,控制服务器端应用程序的启动和终止状态,并保存整个应用程序过程中的信息;Request对象,从用户端获取信息传递给服务器,它是ASP读取用户输入的主要方法;Response对象,服务器将输出的内容发送到客户端;Server对象,提供服务器的方法和属性;Session对象,存储特定的用户会话所需的信息;Object Context对象,配合服务器进行分布事务处理。
介绍一下ASP的内置对象及作用ASP(Active Server Pages,活动服务器页面)是一种用于开发基于服务器的Web应用程序的技术。
在ASP中,有许多内置对象可用于处理Web页面请求和响应。
这些内置对象提供了丰富的功能来处理会话管理、数据库访问、文件操作、浏览器交互等操作。
下面将介绍ASP中常用的内置对象及其作用。
1. Request对象:用于获取来自浏览器的HTTP请求信息,如表单数据、查询字符串、cookie等。
可以通过此对象获取用户输入的数据并进行处理。
例如,使用Request对象可以获取通过表单POST请求传递的数据。
2. Response对象:用于向浏览器发送HTTP响应信息,比如输出HTML文本、设置Cookie、重定向页面等。
通过此对象可以将处理结果返回给用户的浏览器。
例如,使用Response对象可以输出动态生成的HTML页面。
3. Server对象:提供了许多与服务器相关的功能,比如创建对象、执行文件、获取服务器变量和属性等。
可以通过此对象来操作服务器资源,如访问文件系统、执行数据库查询等。
例如,使用Server对象可以将生成的HTML页面保存为静态文件。
4. Session对象:用于存储和管理用户会话数据。
会话数据是在用户访问网站时跨多个页面的数据。
可以使用Session对象保存用户登录信息、购物车内容等与用户相关的数据。
例如,使用Session对象可以在不同页面间共享数据。
5. Application对象:用于存储和管理应用程序级别的数据。
应用程序级别的数据是在应用程序启动时创建并一直保持在内存中的数据。
可以使用Application对象共享数据和状态信息。
例如,使用Application对象可以实现计数器,记录网站的访问次数。
6. Server.MapPath方法:用于将相对路径转换为服务器上的物理路径。
可以通过此方法获取文件系统路径,读取和写入文件,以及其他需要物理路径的操作。
ASP 技术访问WE B 数据库Ξ钟荣超(中山大学软件研究所,广东广州510275)摘 要:本文对ASP 访问数据库的原理、ASP 页面的结构、ASP 的运行环境、ASP 的内建对象和ASP 访问数据库步骤作详细分析。
关键词:先进数据库连接器ADC ;动态服务器页面ASP ;对象;组件;ADO中图分类号:TP312 文献标识码:A 文章编号:052926579(2005)S22001472021 ASP 访问数据库的原理ASP 是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WE B 服务器程序。
当用户使用浏览器请求ASP 主页时,WE B 服务器响应,调用ASP 引擎来执行ASP 文件,并解释其中的脚本语言(JScript 或VBScript ),通过ODBC 连接数据库,由数据库访问组件ADO (ActiveX Data Objects )完成数据库操作,最后ASP 生成包含有数据查询结果的HT M L 主页返回用户端显示。
由于ASP 在服务器端运行,运行结果以HT M L 主页形式返回用户浏览器,因而ASP 源程序不会泄密,增加了系统的安全保密性。
此外,ASP 是面向对象的脚本环境,用户可自行增加ActiveX 组件来扩充其功能,拓展应用范围。
2 ASP 页面结构与运行环境ASP 的程序代码简单、通用,文件名由1asp结尾,ASP 文件通常由四部分构成:①标准的HT M L 标记:所有的HT M L 标记均可使用;②ASP 语法命令:位于<%%>标签内的ASP 代码;③服务器端的include 语句:可用#include 语句调入其它ASP 代码,增强了编程的灵活性;④脚本语言:ASP 自带JScript 和VBScript 两种脚本语言,增加了ASP 的编程功能,用户也可安装其它脚本语言,如Perl 、Rexx 等。
目前ASP 可运行在三种环境下:①WI NDOWS NT server 410运行IIS 310以上;②WI NDOWS NT w orkstation 410运行Peer Web Server 310以上;③WI NDOWS 95Π98运行PWS (Pers onal Web Server )。
年月(下)1引言在Inte rne t/Intrane t 的发展过程中,涌现出了多种W eb 数据库访问技术。
传统的主要有CGI 、IS A PI 、NSAPI 等技术,它们普遍存在开发步骤繁琐、开发周期长、系统资源浪费严重、并发处理困难等问题,因此不适于进行系统的快速开发和及时维护。
目前占主流地位的W e b 数据库访问技术主要有三种:ASP 、P HP 以及JSP ,其中,ASP是微软公司推出的We b 应用开发技术,着重于处理动态网页和W eb数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问W eb 数据库的最佳选择。
2A S P 技术概述ASP (Active Serve r Pages )是一种由微软公司开发的服务器端脚本环境,通过ASP 可以结合HTML 网页、A S P 指令和A ctive X 组件建立动态、交互且高效率的We b 应用程序。
使用Active X 组件中的ADO ,可以方便地访问各种常见数据库,如A cc ess 、SQLServe r 、Oracle 。
使用A SP ,开发者不必担心客户端的浏览器是否能看到正确的结果,因为所有程序都是在服务器上执行,程序执行完后,服务器仅将执行的结果以标准的HT ML 代码的形式发送到客户端浏览器上。
在建立动态W eb 页方面,相对于CGI 、ISAPI 及脚本语言,ASP 在技术上有以下几个优势:1)集成在HTML 中,源文件无须编译或链接即可执行;2)与浏览器无关,不论用户使用的哪种浏览器,都可以看到正确的结果;3)使用V BScript 、JavaS cfi pt 等简单易懂的脚本语言,结合HTML 代码,即可快速完成W eb 应用程序的开发;4)A S P 的源程序代码,不会传到用户的浏览器,传到用户浏览器的是ASP 执行结果的HTML 码。
这既保护的ASP 的源程序代码,又可使ASP 支持所有的浏览器。
3A S P 的工作原理ASP 是一个We b 服务器端的开发环境,可以建立和执行动态的、交互式、高效率的WW W 服务器的应用程序。
ASP技术访问WEB数据库中图分类号:tp文献标识码:a文章编号:1007-0745(2009)02-00摘要:作者阐述了windows操作系统中iis(internet information server)内含的asp(active server page)和ado(activex data objects)技术的结构和特点,总结了采用asp 技术访问web数据库的步骤。
asp编写前台动态网页,它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作,通过ado 访问后台web数据库。
关键词:asp技术 ado iis web数据库0 引言目前,internet网络技术正飞速发展。
每时每刻,成千上万的人们通过访问各种web数据库进行信息的快速交流和传递。
这一切都离不开强有力的动态网页制作工具asp及其ado对象。
为此,本文将对asp技术和ado对象作较全面的介绍,并通过一个实例来说明它是如何进行数据库的访问。
1 访问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数据库的最佳选择。
2 asp简介2.1 asp访问数据库的原理asp是服务器端的脚本执行环境,可用来产生和执行动态的高性能的web服务器程序。
当用户使用浏览器请求asp主页时,web服务器响应,调用asp引擎来执行asp文件,并解释其中的脚本语言(jscript或vbscript),通过odbc连接数据库,由数据库访问组件ado(activex data objects)完成数据库操作,最后asp生成包含有数据查询结果的html主页返回用户端显示。
由于asp在服务器端运行,运行结果以html主页形式返回用户浏览器,因而asp源程序不会泄密,增加了系统的安全保密性。
此外,asp是面向对象的脚本环境,用户可自行增加activex组件来扩充其功能,拓展应用范围。
2.2 asp页面的结构asp的程序代码简单、通用,文件名由.asp结尾,asp文件通常由四部分构成:(1)标准的html标记:所有的html标记均可使用。
(2)asp语法命令:位于?标签内的asp代码。
(3)服务器端的include语句:可用#include语句调入其它asp代码,增强了编程的灵活性。
(4)脚本语言:asp自带jscript和vbscript两种脚本语言,增加了asp的编程功能,用户也可安装其它脚本语言,如perl、rexx等。
2.3 asp的运行环境目前asp可运行在三种环境下:(1)windows nt server 4.0运行iis 3.0(internet information server)以上。
(2)windows nt workstation4.0 运行peer web server 3.0以上。
(3)windows95/98运行pws(personal web server)。
其中以nt server上的iis功能最强,提供了对asp的全面支持,是创建高速、稳定的asp主页的最佳选择。
2.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)管理的支持。
2.5asp的主要内置组件(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 组件,以提高系统的实用性。
2.6 database access组件adowww上很重要的应用是访问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集合:提供访问数据库时的错误信息。
3 asp访问数据库步骤在asp中,使用ado组件访问后台数据库,可通过以下步骤进行:3.1 定义数据源在web服务器上打开“控制面板”,选中“odbc”,在“系统dsn”下选“添加”,选定你希望的数据库种类、名称、位置等。
本文定义“sql?server”,数据源为“cj”,数据库名称为“stu”,脚本语言采用jscript。
3.2 使用ado组件查询web数据库(1)调用server.createobject方法取得“adodb.connection”的实例,再使用open方法打开数据库:conn=server.createobject(“adodb.connection”)conn.open(“cj”)(2)指定要执行的sql命令连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过sql指令来完成的,如要在数据表stutab中查询代码中含有“x”的记录sqlstr=“select*from stutab 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-1rs(“字段名”):指定字段的数据。
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()4 查询web数据库举例我们以服务器名称为“srver1”的microsoft的 sql7.0数据库为例,web服务器为iis4.0,访问的数据库名为“stu”,使用的存储过程为“bj1”,访问的字段为“姓名”、性别”和“班级名称”等,当用户使用浏览器查询时,将查询结果显示给客户端。
程序如下:<html><head><title>访问数据库演示</title></head><body><% set cm1=server.creatobject(“mand”)cm1.activeconnection=“drive={sqlserver};server=server1;uid=sa;pwd=;database= stu”’建立连接的对象,说明对象使用的连接字符串mandtext=”bj1”mandtype=adcmdstoredprocset p1=cm.createparameter(“in”,advarchar,adparaminput,10,“法学9903”)cm1.parameters.append p1set rs1=cm.execute’说明使用的存储过程及其参数,使用“execute”命令,将返回的结果存储到rs1response.write(“<table border = 1>”)response.write(“<tr>”)for i=0 to rs1.fields.count-1response.write(“<td>”+rs(i).name+“</td>”)nextresponse.write(“</tr>”)’显示记录集的字段名称while not rs1.eofresponse.write(“<tr>”)for i=0 to rs1.fields.count-1response.write(“<td valign = top>”+rs1(i).value+”</td>”)nextresponse.write(“</tr>”)rs1.movenextwend’显示记录集的记录内容response.write(“</table>”)rs1.closecm1.close %>’关闭记录集和连接的对象</body></html>程序运行结果如下:班级名称学号姓名出生日期性别民族政治面貌办学形式法学9903 9903060001张三1980-08-05 男汉族中共党员统招法学9903 9903060008李佳丽1983-03-17 女侗族团员统招法学9903 9903060021李仁勇1982-11-02 男汉族团员统招参考文献:[1]袁玫,林志英,刘劲松.网络数据库应用教程[m].北京:人民邮电出版社,2001.[2]冯能山,李其艺.轻松学习-asp网络实用教程[m].北京:清华大学出版社,2002.[3]姚晓乐.web开发技术[m].北京:人民邮电出版社,1999.[4]王国荣.asp网页制作教程[m].北京:人民邮电出版社,2000.[5]魏应彬,周星,康耀红.网页设计与数据库发布技术. 北京:清华大学出版社,2002.。