顯示具有 ASP 標籤的文章。 顯示所有文章
顯示具有 ASP 標籤的文章。 顯示所有文章
2007-09-23 17:07

利用 ASP 對 Access 資料庫重組

由於 Access 資料庫沒有支援的 SQL 指令可做重組 而且在做刪除資料時,還是不會將空間釋放出來 這種狀況只能從 Server 上做重組釋放的動作 但不是每個人都可以進入 Server 上做這個動作 所以另外的辦法就是從 ASP 網頁上執行
<%
'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-16 20:43

Access 資料庫連結字串

有設定密碼的連結字串
"Driver={Microsoft Access Driver (*.mdb)};DBQ="& Server.MapPath("/test.mdb")& ";User ID=xxxx;Password=xxxx;"

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("/test.mdb")& ";Jet OLEDB:Database Password=xxxx;"

沒有設定密碼的連結字串
"Driver={Microsoft Access Driver (*.mdb)};DBQ="& Server.MapPath("/test.mdb")

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("/test.mdb")

Server.MapPath 輸入以主目錄為參考的相對路徑,回傳一個網站的絕對路徑
User ID :資料庫使用者帳號
Password :資料庫使用者密碼