asp Access資料備份,還原,壓縮類別實作程式碼,大家可以參考下。 <!--#include file=config.asp -->
<!--#include file=Fun.asp -->
<%
'資料庫管理類
class Datas
'備份
public sub Bk()
Set fso=server.createobject(scripting.filesystemobject)
fso.CopyFile Server.MapPath(SiteDataPath),Server.MapPath(SiteDataBakPath)
set fso=nothing
response.Write(<script language=javascript><!--
alert('備份成功!');window.location.href='DataManage.asp'
// --></script>)
end sub
'還原
public sub Rt()
SDPath = server.mappath(SiteDataPath)
SDBPath = server.mappath(SiteDataBakPath)
set Fso=Server.CreateObject(Scripting.FileSystemObject)
if Fso.FileExists(SDBPath) then
Fso.CopyFile SDBPath,SDPath
Set Fso=nothing
response.Write(<script language=javascript><!--
alert('成功:你已經成功還原資料庫!');window.location.href='DataManage.asp?action=rt'
// --></script>)
else
response.Write(<script language=javascript><!--
alert('失敗:請檢查路徑和資料庫名稱是否存在');window.location.href='DataManage.asp?action=rt'
// --></script>)
end if
end sub
'壓縮
public sub Dc()
SDBPath = server.mappath(SiteDataBakPath)
set Fso=Server.CreateObject(Scripting.FileSystemObject)
if Fso.FileExists(SDBPath) then
Set Engine =Server.CreateObject(JRO.JetEngine)
if request(boolIs) = 97 then
Engine.CompactDatabase Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & SDBPath, _
Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & SDBPath & _temp.mdb; _
& Jet OLEDB:Engine Type= & JET_3X
else
Engine.CompactDatabase Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & SDBPath, _
Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & SDBPath & _temp.mdb
end if
Fso.CopyFile SDBPath & _temp.mdb,SDBPath
Fso.DeleteFile(SDBPath & _temp.mdb)
set Fso = nothing
set Engine = nothing
response.Write(<script language=javascript><!--
alert('成功:資料庫已經壓縮成功!');window.location.href='DataManage.asp?action=dc'
// --></script>)
else
response.Write(<script language=javascript><!--
alert('失敗:資料庫壓縮失敗,請檢查路徑和資料庫名稱是否存在!');window.location.href='DataManage.asp?action=dc'
// --></script>)
end if
end sub
end class
%>