说实在的,我没有用过 ASP+Access做过开发的。用 Access在大学时做过开发,是用 Java做的一个桌面小程序。 但是,如何用 ASP+Access进行开发、以及在开发过程中的问题,有好几个同学问过我,由于自己没弄过,所以也就答不上来。 上次也一样,好友要我弄个 ASP+Access的简单例子给他,没办法,只好边上网查边给好友弄了个查列表的演示功能,其它的增、删、改好友自己搞定。 今天我一起把这几个基本功能一并整理,做个备份,以备将来自己用到或是好友问到。 一、简单介绍 要用 Access,首先得在电脑上安装个 MS Office Access程序。它和其它数据库不同的是,它只有一个文件,直接操作这个文件即可;它有个便利的地方:当感觉哪条数据不爽或是不对时,可以直接打开修改,也就是 MS Office Access集成了服务器(不太准确)和可视化客户端(也不太准确)。 Access是不支持并发的,因为当天我用客户端打开数据库文件,同时用 ASP访问时,就报错,具体信息忘记了,大意是已经打开了,不能再访问了。至于支持不支持事务等,我想是不支持的,连并发都不支持,那么支持事务就没有任何意义了。 二、打开和关闭Access连接 用 JDBC操作数据库先是要打开一个连接(java.sql.Connection)的,操作完了就要关闭该连接。ASP操作 Access也不例外,用时也要打开一个连接,用完了也要关闭的。 1、打开连接 <% Set conn = Server.CreateObject("ADODB.Connection") conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("TEST.mdb") %> 上面的 conn最后的就是打开的连接了,最后的 Server.MapPath("TEST.mdb")是指定 Access数据文件的位置的,Server.MapPath("path")就是把相对路径转化成绝对路径,这样 Driver就可以找到该数据文件了。 2、关闭连接 <% conn.close set conn = nothing %> 上面的 conn.close就是关闭了,set conn = nothing就是把 conn指向null了。有个问题:conn.close有没有可能抛出异常,该如何捕捉? 三、ASP对Access实现增操作 要有后面的删、改、查,首先数据库中得有数据,所以“增”放在第一个。 <% Set rs = Server.CreateObject("ADODB.Recordset") sql = "select * from feedback where (feedbackid is null)" rs.open sql,conn,1,3 rs.addnew rs("typeid") = typeid rs("feedbackC") = feedbackC rs.update rs.close set ...