在ASP程序中访问Access数据库

access|程序|访问|数据|数据库

         在基于微软IIS/PWS的网络平台上,通过服务器端运行的ASP程序来访问后台数据库,是一种最常见的模式了。而对于小型的数据库应用需求,微软的Access数据库,应该是与ASP程序配套使用的首选。由于Access数据库的ODBC驱动程序支持的SQL指令全,执行效率高,所以Access后台数据库+ASP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。

        在这种使用模式中,ASP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。在ASP程序中,通过VB Script,建立对Access数据库的连接,是客户能够访问后台数据库的前提。
  一、建立Access数据库连接的常用方法

  在ASP中建立对Access数据库连接的一般格式如下:

  <%

  DbPath=Server.MapPath(数据库名)

  Set Conn=Server.CreatObject(“ADODB.Connection”)

  Conn.Open “driver={Microsoft Access Driver (*.mdb)};dbq=”& DbPath

  Set rs=Server.CreatObject(“ADODB.Recordset”)

  Rs.Open 数据表名或SQL指令,Connection对象,Recordset类型,锁定类型

  … …

  %> 它的各步骤及参数意义如下:

  第一行程序:利用Server对象的MapPath函数,取得要打开数据库的完整的文件路径,并存储在变量DbPath中。这其中,数据库名是我们需要指定的参数,应该用我们要打开的数据库的实际名称替代。如果数据库名是直接作为常量出现,要用引号将其括起来,并且不能丢掉扩展名。例如数据库是Test.mdb,则该行程序成为:DbPath=Server.MapPath(“Test.mdb”)。

  第二行程序:建立一个ADO对象集中的Connection对象,也即连接对象。这是建立数据库连接的初始步骤。执行这行程序后,Conn成为一个连接对象。

  第三行程序:利用连接对象Conn的Open方法打开一个指定的数据库。因为我们要打开的是Access数据库,所以要指定ODBC驱动程序参数,表示要透过Access的ODBC驱动程序来访问数据库:driver={Microsoft Access Driver (*.mdb)};。另一个参数dbq= & DbPath,运算后等效于dbq=Server.MapPath(数据库名) ,是利用了第一行的Server.MapPath(数据库名)函数,用来指定要打开的数据库文件。到这里,就已经打开了数据库名指定的数据库。如果数据库名是“test.mdb”,则打开Access数据库Test.mdb。在这一行里指定的参数,要严格按照格式原样写出,不能省略或改动,也没有可变参数。

        第四行程序:建立一个ADO对象集中的Recordset对象,以便利用Recordset对象操作数据库(当然,这只是对数据库操作的多种方式之一)。执行这行后,rs就成为一个Recordset对象。

  第五行程序:利用rs对象的Open方法打开数据库中的数据表。这其中有四个参数,其意义如下

        数据表名或SQL指令串:在这个参数里指定要打开的数据库内的数据表名称,或者是用SQL的Select指令串确定的数据表的指定范围数据,例如,数据库Test.mdb中有数据表Number,则该参数成为“Number”,注意引号不能丢;若想打开数据表Number中xh字段值小于90的数据记录,则该参数可能成为如下的形式:

  “Select * From Number Where xh < 90”。

  Connection对象:指定已经打开的数据库的Connection对象,在这里固定是Conn,注意无须引号的。

  Recordset类型:表示打开数据表的方式,有四种选择。数字0表示只读方式,且当前记录只能下移;数字1表示可读写方式,当前记录可自由上下移动,但不能及时看到别的用户建立的新记录,除非重新启动;数字2表示可读写方式,当前记录可自由移动,而且可以及时看到别的用户增加的新记录;数字3表示只读方式,但当前记录可以自由移动。一般选择2为好,除非为了禁止数据被修改。

  锁定类型:这个参数指定数据库的锁定功能。因为网络上的数据库都是多用户的,很可能同时有多个用户在操作数据库。为了避免错误,让同一时间只可能有一个用户修改数据,就要用锁定功能。有四种选择:数字1表示只读方式锁定,用户不能更改数据;数字2表示悲观锁定,当一个用户用rs对象开始修改数据时就锁定数据库,直到用户用rs.Update更新记录后,才解除锁定;数字3表示乐观锁定,只有在数据写入数据库中时候才锁定,不保险,慎用!数字4表示批次乐观锁定,只有在使用rs.UpdateBatch成批更新数据时候才锁定数据记录。属于很少使用的。一般地,使用悲观锁定比较安全,但是效率要低些。

[1] [2] 下一页  

时间: 2024-12-31 02:59:23

在ASP程序中访问Access数据库的相关文章

如何在Java程序中访问mysql数据库中的数据并进行简单的操作_Mysql

在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据并进行简单的操作,具体详情请看下文. 创建一个javaProject,并输入如下java代码: package link; import java.sql.*; /** * 使用JDBC连接数据库MySQL的过程 * DataBase:fuck, table:person: * 使用myeclipse对mysql数据库进行增删改查的基本操作. */ public

ASP.NET中防止Access数据库下载

access|asp.net|数据|数据库|下载 如何防止Access数据库下载是一个很老的话题了,网上的讨论也比较多.在这里只是探讨ASP.NET下防止Access数据库被下载的方法,有些是对以前方法的总结,部分是自己原创.其中可能有不完善甚至不正确的地方,欢迎大家指出,一同进步. 目前的解决方案主要有以下几种: 1. 把数据库文件放置到站点目录之外 2. 设置存放数据库文件的IIS目录权限为不可读取(IIS信息服务管理->选择需要设置目录->右键->属性->目录选项卡->

/*紧急*/ASP.NET 2.0中访问Access数据库的问题

问题描述 有一个StudentInfo.mdb的Access数据库文件,里面有一张StudentInformation的数据表请问各位大哥,在ASP.NET2.0里怎样连接Access数据库?怎样设置连接字符串?需要配置其他什么吗?谢谢! 解决方案 解决方案二:直接用它自带的组件就可以连了.解决方案三:你去网上GOOGLE一下吧,很多实例.----------------------------------------------------------1.写在Web.config中使用相对路径

怎样在ASP程序中打印Access报表(无组件的经典程序)

access|程序|打印|无组件 目前,B/S模式(浏览器/服务器模式)成为企业网上首选的计算模式.由于B/S模式的特殊性,在C/S下相对较易实现的Excel报表打印功能在B/S下却成为一个难点.本人通过研究写了一个基于ASP程序的打印Acess报表的程序.本程序的特点是无须任何组件. Print.asp------------------------------------------------ <html><title>打印Excel报表</title><%

通过asp程序来创建access数据库_应用技巧

如下所示: 复制代码 代码如下: Set Catalog_object= Server.CreateObject("ADOX.Catalog") Catalog_object.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/jb51.net.mdb")) 简单的两句话就可以创建出access数据库,在create函数中你只需要提供"

通过asp程序来创建access数据库

如下所示: 复制代码 代码如下: Set Catalog_object= Server.CreateObject("ADOX.Catalog") Catalog_object.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/jb51.net.mdb")) 简单的两句话就可以创建出access数据库,在create函数中你只需要提供"

xp系统-vs2010生成的访问access数据库程序,在xp下不能查询

问题描述 vs2010生成的访问access数据库程序,在xp下不能查询 我在32位win7系统下,编写的sql访问access2010数据库程序,调试完成,生成了可执行文件.但是当我将执行好的文件,安装到xp系统上时,可以安装,数据更新,也能更新到数据库,就是查询功能不好用,跟没有链接查询似得,求大神帮忙? 解决方案 可以更新按理说也可以查询.你去掉try catch然后运行,看看报什么错.比如是不是连接字符串或者日期格式的问题. 解决方案二: 我在win7系统下运行,及能更新,也能查询,什么

sqlserver-怎么把 文章上传到数据库中或者怎么在asp.net中访问数据库中已有的文章

问题描述 怎么把 文章上传到数据库中或者怎么在asp.net中访问数据库中已有的文章 怎么把 文章上传到数据库中或者怎么在asp.net中访问数据库中已有的文章

c#3 0-如何在c#窗口应用程序中打开一个数据库

问题描述 如何在c#窗口应用程序中打开一个数据库 在下新手,在数据库编程时做书上的例子,通过c#程序登录界面,登录到一个数据库,我使用了本地服务器.在SQL server management studio中,使用账号sa以sqlserver身份验证方式可以登录服务器名为HY-20141014UKZESQLEXPRESS的数据库引擎,并且创建了一个名为Fiancing的数据库, 参考书上的例子如下,怎么样可以在这个c#程序中登录Fiancing数据库?private void btnLogin_