Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16494342
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 20:38:12

下载本文示例代码
  引言  本文针对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: <:  ’使用ASP的Connection 对象打开数据库,数据库文件为上图的<Friend.mdb>’05:  Dim objConn06:  Set objConn=Server.CreateObject("ADODB.Connection")07:  objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_08:    "Data Source=" & Server.MapPath("Friend.mdb")09:  objConn.Open10:  读取"data"表的记录,然后存放在Record set对象11:  Dim objRS12:  Set objRS=Server.CreateObject("ADODB.Recordset")13:  ObjRS.Open "data",objConn,adOpenKeyset,adLockOptimistic,adCmdTable14:  ’将目前指针所指到的记录显示在浏览器上15:  If Not objRS. EOF then16:   Response.Write "编号:"&objRS("编号")& "<BR>"17:   Response. Write "姓名:"&objRS("姓名")& "<BR>"18:   Response. Write "性别:"&objRS("性别")& "<BR>"19:  Else20:   Response.Write "到达数据库的结尾,已经显示完所有符合条件的记录"21:  End If22:   ’关闭数据库连接并释放对象实例23:   ObjRS. Close24:   Set objRS=Nothing25:   ObjConn.Close26:   Set objConn=Nothing27: %>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 objConnDim GetSQLRecordsetFunction 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,adCmdTextEnd 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 的全部文章   引言  本文针对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: <:  ’使用ASP的Connection 对象打开数据库,数据库文件为上图的<Friend.mdb>’05:  Dim objConn06:  Set objConn=Server.CreateObject("ADODB.Connection")07:  objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_08:    "Data Source=" & Server.MapPath("Friend.mdb")09:  objConn.Open10:  读取"data"表的记录,然后存放在Record set对象11:  Dim objRS12:  Set objRS=Server.CreateObject("ADODB.Recordset")13:  ObjRS.Open "data",objConn,adOpenKeyset,adLockOptimistic,adCmdTable14:  ’将目前指针所指到的记录显示在浏览器上15:  If Not objRS. EOF then16:   Response.Write "编号:"&objRS("编号")& "<BR>"17:   Response. Write "姓名:"&objRS("姓名")& "<BR>"18:   Response. Write "性别:"&objRS("性别")& "<BR>"19:  Else20:   Response.Write "到达数据库的结尾,已经显示完所有符合条件的记录"21:  End If22:   ’关闭数据库连接并释放对象实例23:   ObjRS. Close24:   Set objRS=Nothing25:   ObjConn.Close26:   Set objConn=Nothing27: %>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 objConnDim GetSQLRecordsetFunction 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,adCmdTextEnd 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 的全部文章 下载本文示例代码


ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径ASP开发中数据库文件调用的捷径
阅读(133) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~