ASP中实现通用的数据库路径文件方法
作者:吕海鹏 文章来源:深度空间原创
在开发ASP + Access的Web应用时,常会遇到数据库文件路径的定位问题。如果在自己的计算机上实现时可以直接指定了事,但如果做的项目要上传到别的服务器或移动别的机器上运行使用,每次都要把这个路径改来改去的话显得有些繁锁,下面结合我做这个网站的经验来解决这个问题,让我们可以“一劳永逸”。
这里以“深度学习网址导航系统”(http://www.deepteach.com/DT_WebDir/)为例,网站的目录结构如下(只列出了相关部分):
DT_WebDir
|- DataBase ’数据库文件目录
| |- data.mdb
|
|- Admin ’后台管理程序所在
| |- login.asp
| |- admin.asp
|
|- index.asp
|- ConnDB.asp ’数据库连接文件
因为index.asp和ConnDB.asp在同一目录下,因此ConnDB.asp中的连接语句这么写的:
Dim ConnStr,Conn
DBpath =”DataBase/data.mdb” ’数据库文件的位置
ConnStr = “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=”& Server.MapPath(DBPath)
set Conn = Server.CreateObject(“ADODB.Connection”)
Conn.Open ConnStr
直接在index.asp文件中加入语句实现引用
在ASP中使用Server.MapPath (“file.asp”)语句后,会返回该文件在本地驱动器上的绝对路径,如“D:\DT_WebDir\DataBase\data.mdb”“D:\ DT_WebDir\Admin\DataBase\data.mdb”,所以在不同的子目录的不同文件使用这条语句就只会返回那个文件所在路径,这样我们就不能简单地利用这条语句解决上面的问题,但只要稍加利用这条方法和其它与个字符函数就可以轻松解决上面的问题。
只要我们在需要访问数据库的asp文件中加入以下语句。
“深度学习网址导航系统”实现代码如下:
====================
ConnDB.asp文件
====================
Dim DBpath,ConnStr,Conn
DBpath =DBpath & “DataBase/#data.mdb” ’数据库文件的位置
ConnStr = “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=”& Server.MapPath(DBPath)
On Error Resume Next ’启用错误处理程序
set Conn = Server.CreateObject(“ADODB.Connection”)
Conn.Open ConnStr
’=====================
If Err Then
err.Clear
Set Conn = Nothing
Response.Write ”
数据库连接出错,请检查链接路径和数据库名称!
”
Response.End
End If
’======================
On Error GoTo 0 ’禁用错误处理程序
’┌──────────────────── 深度空间 深度学习 ──┐
’│过程名:CloseConnDB
’│作 用:关闭数据库
’│参 数:无
’│日 期:2006/1/16
’└──────────────────── www.DeepTeach.com ──┘
sub CloseConnDB()
Conn.Close
set conn=nothing
end sub
=======================
只要我们在不同目录的需要访问数据库的asp文件中加入以下语句:
=======================
例如:Class_Manage.asp 如下图:
上述方法实现了在不同目录只需调用一个数据库路径文件,这样在应用时只需更改相对应的这个文件就可以实现整站程序的数据库路径 或数据库文件名的变更……
当你改变你站点的目录名称或移到别的机器的情况下就可以不需要理会数据库文件的存取路径问题了。
ASP中实现通用的数据库路径文件方法
相关推荐
- 员工考勤打卡时,如何避免非本人代替打卡? - 华为云开发者联盟 - 博客园
- Web Components从技术解析到生态应用个人心得指北 - zhoulujun - 博客园
- 【经典问题】mysql和redis数据一致性问题 - Scotyzh - 博客园
- vs出现错误,无法启动 Visual Studio。StreamJsonRpc.ConnectionLostException:在请求完成之前,与远程的JSON-RPC连接已丢失_客服专区-CSDN问答
- 【转】Chrome内核浏览器打开网页报 错误代码: ERR_TIMED_OUT - m_lm的个人空间 - OSCHINA - 中文开源技术交流社区
- ASP.NET Core WebApi配置跨域_asp.net core webapi 跨域-CSDN博客
- C# 怎么用OpenCVSharp4实现图片表格识别
- ChatGPT 本地部署及搭建_孟郎郎的博客-CSDN博客