- <%
- 'CompactDB 成功將回傳 true,失敗將回傳 false
- 'DBUrl 以主目錄開始的資料庫相對位址字串
- 'passwd 資料庫密碼,如果沒有請輸入空字串
- Function CompactDB(DBUrl,passwd)
- Set fso = CreateObject("Scripting.FileSystemObject")
- Dim strDB
- strDB = server.MapPath(DBUrl)
- Dim strNewDB
- strNewDB = server.MapPath(DBUrl & ".tmp")
- Dim login
- If(passwd<>"") Then
- login = ";Jet OLEDB:Database Password=" & passwd & ";"
- Else
- login = ""
- End If
- If fso.FileExists(strDB) Then
- '壓縮資料庫
- Set Engine = CreateObject("JRO.JetEngine")
- strPvd = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
- Engine.CompactDatabase strPvd&strDB&login,strPvd&strNewDB&login
- Set Engine = nothing
- '刪除舊的資料庫
- fso.DeleteFile strDB
- fso.MoveFile strNewDB,strDB
- '回傳已成功的訊息
- CompactDB = true
- Else
- '回傳失敗訊息
- CompactDB = false
- End If
- Set fso = nothing
- End Function
- %>
2007-09-23 17:07
利用 ASP 對 Access 資料庫重組
由於 Access 資料庫沒有支援的 SQL 指令可做重組
而且在做刪除資料時,還是不會將空間釋放出來
這種狀況只能從 Server 上做重組釋放的動作
但不是每個人都可以進入 Server 上做這個動作
所以另外的辦法就是從 ASP 網頁上執行
檔案連結
訂閱:
張貼留言 (Atom)
0 回應:
張貼留言