• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    純編碼實現Access數據庫的建立或壓縮

    發布: 2007-7-14 19:37 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 14次 | 進入軟件測試論壇討論

    領測軟件測試網 <%
    '#######以下是一個類文件,下面的注解是調用類的方法##################################
    '# 注意:如果系統不支持建立Scripting.FileSystemObject對象,那么數據庫壓縮功能將無法使用
    '# Access 數據庫類
    '# CreateDbFile 建立一個Access 數據庫文件
    '# CompactDatabase 壓縮一個Access 數據庫文件
    '# 建立對象方法:
    '# Set a = New DatabaseTools
    '# by (蕭寒雪) s.f.
    '##################################

    Class DatabaseTools

    Public function CreateDBfile(byVal dbFileName,byVal DbVer,byVal SavePath)
    '建立數據庫文件
    'If DbVer is 0 Then Create Access97 dbFile
    'If DbVer is 1 Then Create Access2000 dbFile
    On error resume Next
    If Right(SavePath,1)<>"\" Or Right(SavePath,1)<>"/" Then SavePath = Trim(SavePath) & "\"
    If Left(dbFileName,1)="\" Or Left(dbFileName,1)="/" Then dbFileName = Trim(Mid(dbFileName,2,Len(dbFileName)))
    If DbExists(SavePath & dbFileName) Then
    Response.Write ("對不起,該數據庫已經存在!")
    CreateDBfile = False
    Else
    Dim Ca
    Set Ca = Server.CreateObject("ADOX.Catalog")
    If Err.number<>0 Then
    Response.Write ("無法建立,請檢查錯誤信息<br>" & Err.number & "<br>" & Err.Description)
    Err.Clear
    Exit function
    End If
    If DbVer=0 Then
    call Ca.Create("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & SavePath & dbFileName)
    Else
    call Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & SavePath & dbFileName)
    End If
    Set Ca = Nothing
    CreateDBfile = True
    End If
    End function

    Public function CompactDatabase(byVal dbFileName,byVal DbVer,byVal SavePath)
    '壓縮數據庫文件
    '0 為access 97
    '1 為access 2000
    On Error resume next
    If Right(SavePath,1)<>"\" Or Right(SavePath,1)<>"/" Then SavePath = Trim(SavePath) & "\"
    If Left(dbFileName,1)="\" Or Left(dbFileName,1)="/" Then dbFileName = Trim(Mid(dbFileName,2,Len(dbFileName)))
    If DbExists(SavePath & dbFileName) Then
    Response.Write ("對不起,該數據庫已經存在!")
    CompactDatabase = False
    Else
    Dim Cd
    Set Cd =Server.CreateObject("JRO.JetEngine")
    If Err.number<>0 Then
    Response.Write ("無法壓縮,請檢查錯誤信息<br>" & Err.number & "<br>" & Err.Description)
    Err.Clear
    Exit function
    End If
    If DbVer=0 Then
    call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & SavePath & dbFileName,"Provider=Microsoft.Jet.OLEDB.3.51;Data
    Source=" & SavePath & dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True")
    Else
    call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
    SavePath & dbFileName,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
    SavePath & dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True")
    End If
    '刪除舊的數據庫文件
    call DeleteFile(SavePath & dbFileName)
    '將壓縮后的數據庫文件還原
    call RenameFile(SavePath & dbFileName & ".bak.mdb",SavePath & dbFileName)
    Set Cd = False
    CompactDatabase = True
    End If
    end function

    Public function DbExists(byVal dbPath)
    '查找數據庫文件是否存在
    On Error resume Next
    Dim c
    Set c = Server.CreateObject("ADODB.Connection")
    c.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
    If Err.number<>0 Then
    Err.Clear
    DbExists = false
    else
    DbExists = True
    End If
    set c = nothing
    End function

    Public function AppPath()
    '取當前真實路徑
    AppPath = Server.MapPath("./")
    End function

    Public function AppName()
    '取當前程序名稱
    AppName = Mid(Request.ServerVariables("SCRIPT_NAME"),(InStrRev(Request.ServerVariables("SCRIPT_NAME") ,"/",-1,1))+1,Len(Request.ServerVariables("SCRIPT_NAME")))
    End Function

    Public function DeleteFile(filespec)
    '刪除一個文件
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    If Err.number<>0 Then
    Response.Write("刪除文件發生錯誤!請查看錯誤信息<br>" & Err.number & "<br>" & Err.Description)
    Err.Clear
    DeleteFile = False
    End If
    call fso.DeleteFile(filespec)
    Set fso = Nothing
    DeleteFile = True
    End function

    Public function RenameFile(filespec1,filespec2)
    '修改一個文件
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    If Err.number<>0 Then
    Response.Write("修改文件名時發生錯誤!請查看錯誤信息<br>" & Err.number & "<br>" & Err.Description)
    Err.Clear
    RenameFile = False
    End If
    call fso.CopyFile(filespec1,filespec2,True)
    call fso.DeleteFile(filespec1)
    Set fso = Nothing
    RenameFile = True
    End function

    End Class
    %>


    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>