在线压缩MDB数据库

一、mdbrar.asp源码:
程序代码 程序代码

<%
option explicit
response.buffer=true
%>
<!--#include file="conn.asp"-->

<%
   Call CompactData()
%>

<%
sub CompactData()
        '关闭数据库链接
        Call CloseConn()
Dim fso, Engine,strDBPath,PDB_1,DbTemp
PDB_1 = server.mappath(DbPath)'数据库文件
        Randomize timer
DbTemp = CStr(Clng(8999999*Rnd+1000000))
if instr(PDB_1,"/") then
   strDBPath = left(PDB_1,instrrev(PDB_1,"/"))
else
   strDBPath = left(PDB_1,instrrev(PDB_1,"\"))
end if
Set fso = Server.CreateObject("Scripting.FileSystemObject")
If fso.FileExists(PDB_1) Then
   Set Engine = CreateObject("JRO.JetEngine")
   Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PDB_1," Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & DbTemp & ".asa"
   fso.CopyFile strDBPath & DbTemp & ".asa",PDB_1
   fso.DeleteFile(strDBPath & DbTemp & ".asa")
   response.write "<br>数据库压缩成功!"
Else
                FoundErr=True
   response.write "<br><li>数据库没有找到!</li>"
End If
Set fso = nothing
Set Engine = nothing
end sub
%>


二、conn.asp源码:

程序代码 程序代码

<%
Const CMSDataBase = 0
Dim DbPath

If CMSDataBase = 0 Then
DbPath = "Data/#db1.asp" '修改数据库名称后,需要相应的修改这里
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(DbPath)
Else
'
End If
%>
<%
Dim Conn,ConnStr,Rs

Call OpenConn()

Set Rs = Server.CreateObject("Adodb.RecordSet")

Private Sub CloseConn()
Conn.Close
Set Conn = Nothing
End Sub

Private Sub OpenConn()
On Error Resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConnStr
If Err.Number<>0 Then
   Response.Write("数据库连接错误")
   Err.Clear
   Response.End()
   Else
    On Error Goto 0
End If
End Sub
%>


使用时,将mdbrar.asp和conn.asp上传到网站根目录或者将mdbrar.asp上传到网站conn.asp文件同目录下,直接运行mdbrar.asp即可。

转自:http://hi.baidu.com/aboutvb/blog/item/63730928ca583d23d42af1f9.html



文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 在线 压缩 MDB 数据库
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.