音效素材网提供各类素材,打造精品素材网站!

站内导航 站长工具 投稿中心 手机访问

音效素材

ASP开发中数据库文件调用的捷径
日期:2021-09-05 21:44:05   来源:脚本之家

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程序设计。

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

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

<HTML><BODY> 
 <!--#include file="adovbs.inc"--> 
 <% 
  '使用ASP的Connection 对象打开数据库,数据库文件为上图的<Friend.mdb>' 
  Dim objConn 
  Set objConn=Server.CreateObject("ADODB.Connection") 
  objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_ 
    "Data Source=" & Server.MapPath("Friend.mdb") 
  objConn.Open 
  读取"data"表的记录,然后存放在Record set对象 
  Dim objRS 
  Set objRS=Server.CreateObject("ADODB.Recordset") 
  ObjRS.Open "data",objConn,adOpenKeyset,adLockOptimistic,adCmdTable 
  '将目前指针所指到的记录显示在浏览器上 
  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>

上述代码为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装进来就可以了。

    您感兴趣的教程

    在docker中安装mysql详解

    本篇文章主要介绍了在docker中安装mysql详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编...

    详解 安装 docker mysql

    win10中文输入法仅在桌面显示怎么办?

    win10中文输入法仅在桌面显示怎么办?

    win10系统使用搜狗,QQ输入法只有在显示桌面的时候才出来,在使用其他程序输入框里面却只能输入字母数字,win10中...

    win10 中文输入法

    一分钟掌握linux系统目录结构

    这篇文章主要介绍了linux系统目录结构,通过结构图和多张表格了解linux系统目录结构,感兴趣的小伙伴们可以参考一...

    结构 目录 系统 linux

    PHP程序员玩转Linux系列 Linux和Windows安装

    这篇文章主要为大家详细介绍了PHP程序员玩转Linux系列文章,Linux和Windows安装nginx教程,具有一定的参考价值,感兴趣...

    玩转 程序员 安装 系列 PHP

    win10怎么安装杜比音效Doby V4.1 win10安装杜

    第四代杜比®家庭影院®技术包含了一整套协同工作的技术,让PC 发出清晰的环绕声同时第四代杜比家庭影院技术...

    win10杜比音效

    纯CSS实现iOS风格打开关闭选择框功能

    这篇文章主要介绍了纯CSS实现iOS风格打开关闭选择框,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作...

    css ios c

    Win7如何给C盘扩容 Win7系统电脑C盘扩容的办法

    Win7如何给C盘扩容 Win7系统电脑C盘扩容的

    Win7给电脑C盘扩容的办法大家知道吗?当系统分区C盘空间不足时,就需要给它扩容了,如果不管,C盘没有足够的空间...

    Win7 C盘 扩容

    百度推广竞品词的投放策略

    SEM是基于关键词搜索的营销活动。作为推广人员,我们所做的工作,就是打理成千上万的关键词,关注它们的质量度...

    百度推广 竞品词

    Visual Studio Code(vscode) git的使用教程

    这篇文章主要介绍了详解Visual Studio Code(vscode) git的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。...

    教程 Studio Visual Code git

    七牛云储存创始人分享七牛的创立故事与

    这篇文章主要介绍了七牛云储存创始人分享七牛的创立故事与对Go语言的应用,七牛选用Go语言这门新兴的编程语言进行...

    七牛 Go语言

    Win10预览版Mobile 10547即将发布 9月19日上午

    微软副总裁Gabriel Aul的Twitter透露了 Win10 Mobile预览版10536即将发布,他表示该版本已进入内部慢速版阶段,发布时间目...

    Win10 预览版

    HTML标签meta总结,HTML5 head meta 属性整理

    移动前端开发中添加一些webkit专属的HTML5头部标签,帮助浏览器更好解析HTML代码,更好地将移动web前端页面表现出来...

    移动端html5模拟长按事件的实现方法

    这篇文章主要介绍了移动端html5模拟长按事件的实现方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家...

    移动端 html5 长按

    HTML常用meta大全(推荐)

    这篇文章主要介绍了HTML常用meta大全(推荐),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参...

    cdr怎么把图片转换成位图? cdr图片转换为位图的教程

    cdr怎么把图片转换成位图? cdr图片转换为

    cdr怎么把图片转换成位图?cdr中插入的图片想要转换成位图,该怎么转换呢?下面我们就来看看cdr图片转换为位图的...

    cdr 图片 位图

    win10系统怎么录屏?win10系统自带录屏详细教程

    win10系统怎么录屏?win10系统自带录屏详细

    当我们是使用win10系统的时候,想要录制电脑上的画面,这时候有人会想到下个第三方软件,其实可以用电脑上的自带...

    win10 系统自带录屏 详细教程

    + 更多教程 +
    ASP编程JSP编程PHP编程.NET编程python编程