动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP技巧 ]的信息

本月文章推荐
.remote script文档(转载自微软)(.
.获得jpg文件的实际尺寸.
.使用Server.scripttimeout来减少.
.PerlScript编写ASP.
.Access通用-自动替换数据库中的字.
.asp组件编写准备工作.
.关于密码校验.
.一个简单的用存储过程分页.
.ASP 3.0 新特色先睹为快(一).
.怎样把数据库结构显示出来的源代.
.aspjpeg组件高级使用方法介绍.
.谈两种数据库内容HTML格式的输出.
.把ASP移植到ASP+.
.ASP文件中的安全问题.
.关于处理GET方式提交的含有特殊字.
.用ASP编程实现网络内容快速查找.
.Recordset对象方法详解.
.编译asp应用程序成为exe文件.
.如何增强ASP程序性能(4).
.让你的网站首页自动选择语言.

ASP开发中数据库文件调用的捷径

发表日期:2005-6-5 |


  引言

  本文针对ASP程序设计中最基础、也是最关键的部分"数据库文件的调用"进行说明,同时谈谈ASP程序设计中数据库文件调用的一些技巧。

  ASP简介

  ASP(Active Server Pages)是微软于1996年推出的Web应用程序开发技术,它是一种脚本语言、ActiveX组件及HTML语言等的综合,微软把它描述为"一个服务器的脚本环境,在这里可以生成和运行动态的、交互的、高性能的Web服务器应用程序"。其主要功能是为生成动态的、交互式的Web服务器应用程序提供一种功能强大的方式或技术。其特点是命令和脚本都在服务器中解释执行,然后送到客户端浏览器的内容只是标准的HTML页面。其优点是程序设计简单易懂,而且方便快捷。ASP在国内的应用已非常普遍,相当一部分的动态网站都运用了ASP技术。

  ASP数据库文件的调用

  虽然不同的系统可能安装不同的数据库驱动程序,但一般的服务器系统都基本支持IIS4.0/5.0,所以服务器系统上至少会有Microsoft Access Driver、Microsoft ODBC for Oracle、SQL Server等3种数据库驱动程序。因此,服务器系统至少可以使用Access、Oracle、SQL Server等3种数据库来从事ASP网页数据库设计。由于Microsoft Access 97/2000属于微软的Office系列之一,且界面和Office系列软件相似,学习起来基本没什么障碍,因此,本文将从初学者入门的角度,使用Access数据库文件来进行ASP程序设计。

  通过Access应用程序制作如图1的数据库文件(friend.mdb)


图1

  那么,ASP程序设计中调用该数据库文件有两种方式,一种为直接在"控制面板"的"数据源(ODBC)"上进行手工设置;另外一种是编程,通过相对路径调用数据库文件,这种方式可适用在任何一台服务器上而不用再进行配置。第一种方式较为简单安全,本文所谈的是第二种方式。

  下面列出ASP程序设计中一般读取数据库文件中表记录的方法:

01: <HTML><BODY>
02: <!--#include file="adovbs.inc"-->
03: <%
04:  ’使用ASP的Connection 对象打开数据库,数据库文件为上图的<Friend.mdb>’
05:  Dim objConn
06:  Set objConn=Server.CreateObject("ADODB.Connection")
07:  objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_
08:    "Data Source=" & Server.MapPath("Friend.mdb")
09:  objConn.Open
10:  读取"data"表的记录,然后存放在Record set对象
11:  Dim objRS
12:  Set objRS=Server.CreateObject("ADODB.Recordset")
13:  ObjRS.Open "data",objConn,adOpenKeyset,adLockOptimistic,adCmdTable
14:  ’将目前指针所指到的记录显示在浏览器上
15:  If Not objRS. EOF then
16:   Response.Write "编号:"&objRS("编号")& "<BR>"
17:   Response. Write "姓名:"&objRS("姓名")& "<BR>"
18:   Response. Write "性别:"&objRS("性别")& "<BR>"
19:  Else
20:   Response.Write "到达数据库的结尾,已经显示完所有符合条件的记录"
21:  End If
22:   ’关闭数据库连接并释放对象实例
23:   ObjRS. Close
24:   Set objRS=Nothing
25:   ObjConn.Close
26:   Set objConn=Nothing
27: %>
28: </BODY></HTML>

  上述代码为ASP编程中一般打开Access数据库文件的设计步骤。

  数据库文件调用的技巧

  (1)事实上,无论换成哪个Access数据库,打开数据库连接与读取表记录的步骤是相同的,其中的变量在于数据库文件的名称及表的名称,所以可以将上述程序的第3~13行改写成函数的形式,并存成一个文件如:ADOFunctions.asp,日后要打开某个数据库文件的话,就把该文件ADOFunctions.asp 装(include)进来,代码如下:

<%
 Dim objConn
 ’变量Filename为数据库文件名,变量Table Name为表名
 Function GetRecordset(FileName,TableName)
  ’使用ASP的Connection 对象打开数据库
  Set objConn=Server.CreateObject("ADODB.Connection")
  objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_
     "Data Source=" & Server.MapPath("Filename")
  objConn.Open
  ’读取表的记录,然后存放在Record set对象"objRS"
  Dim objRS
  Set objRS=Server.CreateObject("ADODB.Recordset")
  ObjRS.Open TableName,objConn,adOpenKeyset,adLockOptimistic,adCmdTable
 End Function
%>

  由上述代码可知,函数名为GetRecordSet,其返回值是存放了表记录的Record set对象实例,存成文件名为ADOFunctions.asp。现在,利用该文件就可以读取任何数据库文件的记录了。如一般读取数据库的编程可简化如下:

<HTML><BODY>
<! --#Include file="adovbs.inc"-->
<! --#include file="ADOFunctions.asp"-->
<%
 ’调用GetRecordset函数取得一个Record set对象实F例,然后指派给变量objRS
 Dim objRS
 Set objRS=GetRecordset("Friend.mdb","data")
 ’将目前指针所指到的记录显示在浏览器上
 If Not objRS.EOF Then
  Response.Write "编号:"&objRS("编号")& "<BR>"
  Response.Write "姓名:"&objRS("姓名")& "<BR>"
  Response.Write "性别:"&objRS("性别")&"<BR>"
 Else
  Response.Write "到达数据库的结尾,已经显示完所有符合条件的记录"
 End If
 ’关闭数据库连接并释放对象实例
 ObjRS. Close
 Set objRS=Nothing
 ObjConn.Close
 Set objConn=Nothing
%>
</BODY></HTML>

  因此,只要在这句代码Set objRS=GetRecordset("Friend.mdb", "data")中改变数据库名称和表名称就可以调用任何Access数据库文件了,当然,要注意的是,后面的数据库中每个表的字段名一定要匹配。

  (2)另外,无论换成哪个Access数据库,打开数据库连接与筛选表记录的步骤也是相同的,其中的变量在于SQL语句(如:"SELECT * FROM data")、数据库文件的名称及表的名称。因此同样道理,可以将这3个变量作为函数的参数,撰写GetSQLRecordset函数,并存成文件名为ADOSQLFunctions.asp,日后要用到的话,只要在程序的最前面把这个文件Include进来,就可以利用GetSQLRecordset函数打开数据库连接,同时也进行筛选表记录,该函数的返回值是存放了符合SQL语句的Record set对象实例。

  代码如下:

<%
Dim objConn
Dim GetSQLRecordset
Function GetSQLRecordset(strSQL,FileName,TableName)
’使用ASP的Connection 对象打开数据库

Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_
"Data Source=" & Server.MapPath("Filename")
objConn.Open
’从表读取符合SQL语句的记录并存放在Record set对象
Set GetSQLRecordset=Server.CreateObject("ADODB.Recordset")
GetSQLRecordset.Open_ strSQL,objConn,adOpenKeyset,adLockOptimistic,adCmdText
End Function
%>

  上述代码中函数名称为:GetSQLRecordset,文件名为ADOSQLFunctions.asp。

  现在,利用该文件就可以调用任何Access数据库的连接,同时对表记录进行筛选的操作。以Friend.mdb文件为例,列出表data中所有的记录,程序代码如下:

<HTML><BODY>
<!--#include file="adovbs.inc"-->
<!--#include file="ADOSQLFunctions.asp"-->
<%
 Dim objRS
 Set objRS=GetSQLRecordset("SELECT 编号,姓名,性别from_ data","Friend.mdb","data")
 Do While Not objRS.EOF
  Response.Write "编号:"&objRS("编号")&"<BR>"
  Response.Write "姓名:"&objRS("姓名")&"<BR>"
  Response.Write "性别:"&objRS("性别")&"<BR>"
 Loop

 objRS.Close
 Set objRS=Nothing
 ObjConn.Close
 Set objConn=Nothing
%>
</BODY></HTML>

  小结

  在ASP编程中,利用好函数往往可以对我们的程序代码简单明了化,读取条理也容易维护,同时也可避免大量的重复繁杂的代码。像上述的情况,若只是简单的与数据库连接,则用第一种情况,将文件ADORecordset.asp 装(include)进来就可以了,若要对数据库中某个表的记录进行筛选或其他SQL语句操作,则用第二种情况,将文件ADOSQLRecordset.asp装进来就可以了。

上一篇:微软建议的ASP性能优化28条守则 人气:13599
下一篇:温柔的杀手—跨站ASP Script攻击 人气:9789
浏览全部ASP的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-12 team论坛 v2.0.4 bulid 080916 A
2008-10-12 Roclog v3.1.6
2008-10-12 SupeV v1.0.1 简体中文 GBK
2008-10-12 NetCMS v1.6.0.1010 正式版
2008-10-12 PHP考试系统PPFrame v1.2.7
2008-10-12 LPAS个人相册 v1.6.3
2008-10-12 快问仿百度知道系统 动态-静态-互
2008-10-12 方卡广告防点击系统 V1.0 GB2312
2008-10-12 泡菜内容管理系统[PCMS] v1.0 Bu
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成