日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

VB.NET创建/修复/压缩/备份/恢复ACCESS数据库

發(fā)布時間:2023/12/18 asp.net 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VB.NET创建/修复/压缩/备份/恢复ACCESS数据库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
'創(chuàng)建數(shù)據(jù)庫Private Sub Create(ByVal mdbPath As String)If File.Exists(mdbPath) ThenThrow New Exception("目標數(shù)據(jù)庫已經(jīng)存在,無法創(chuàng)建")End IfmdbPath = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPathDim cat As ADOX.Catalog = New ADOX.Catalog()cat.Create(mdbPath)End Sub'''' <summary>'''壓縮修復(fù)數(shù)據(jù)庫''' </summary>''' <param name="mdbPath"> 被壓縮的數(shù)據(jù)庫路徑+數(shù)據(jù)庫文件名</param>''' <remarks></remarks>Public Sub Compact(ByVal mdbPath As String)'If Not File.Exists(mdbPath) = False Then '檢查數(shù)據(jù)庫是否已存在 ' Throw New Exception("目標數(shù)據(jù)庫不存在,無法壓縮")'End IfDim temp = GetSysDatePartTime()Dim FilePath As String = mdbPath.Substring(0, mdbPath.LastIndexOf("/") + 1)Dim DbFileName As String = mdbPath.Substring(mdbPath.LastIndexOf("/") + 1, mdbPath.Length - mdbPath.LastIndexOf("/") - 1)File.Copy(mdbPath, FilePath + "DbBak/Bak" + temp + ".mdb", True)Dim StrProvid As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="Dim jt As JRO.JetEngineClass = New JRO.JetEngineClass()jt.CompactDatabase(StrProvid + mdbPath, StrProvid + FilePath + "/DbBak" + temp + ".mdb")File.Delete(mdbPath)File.Copy(FilePath + "/DbBak" + temp + ".mdb", mdbPath, True)File.Delete(FilePath + "/DbBak" + temp + ".mdb")'//檢查數(shù)據(jù)庫是否已存在 { throw new Exception("目標數(shù)據(jù)庫不存在,無法壓縮"); } //聲明臨時數(shù)據(jù)庫的名稱string temp = DateTime.Now.Year.ToString();string temp2=null;temp += DateTime.Now.Month.ToString();temp += DateTime.Now.Day.ToString();temp += DateTime.Now.Hour.ToString();temp += DateTime.Now.Minute.ToString();temp += DateTime.Now.Second.ToString() + ".bak"; temp = mdbPath.Substring(0, mdbPath.LastIndexOf("//") + 1) + temp;//定義臨時數(shù)據(jù)庫的連接字符串temp2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + temp; //定義目標數(shù)據(jù)庫的連接字符串string mdbPath2=null;mdbPath2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath;//創(chuàng)建一個JetEngineClass對象的實例 JRO.JetEngineClass jt = new JRO.JetEngineClass(); //使用JetEngineClass對象的CompactDatabase方法壓縮修復(fù)數(shù)據(jù)庫 jt.CompactDatabase(mdbPath2, temp2);//拷貝臨時數(shù)據(jù)庫到目標數(shù)據(jù)庫(覆蓋)File.Copy(temp, mdbPath, true); //最后刪除臨時數(shù)據(jù)庫File.Delete(temp);End Sub'備份數(shù)據(jù)庫,mdb1,源數(shù)據(jù)庫絕對路徑; mdb2: 目標數(shù)據(jù)庫絕對路徑 Public Sub BackUp(ByVal mdb1 As String, ByVal mdb2 As String)If File.Exists(mdb1) = False ThenThrow New Exception("源數(shù)據(jù)庫不存在")End IfTryFile.Copy(mdb1, mdb2, True)Catch ixp As IOExceptionThrow New Exception(ixp.ToString())End TryEnd Sub'恢復(fù)數(shù)據(jù)庫,mdb1為備份數(shù)據(jù)庫絕對路徑,mdb2為當前數(shù)據(jù)庫絕對路徑Public Sub Recover(ByVal mdb1 As String, ByVal mdb2 As String)If File.Exists(mdb1) = False ThenThrow New Exception("備份數(shù)據(jù)庫不存在")End IfTryFile.Copy(mdb1, mdb2, True)Catch ixp As IOExceptionThrow New Exception(ixp.ToString())End TryEnd Sub''' <summary>''' 檢查模板文件是否存在''' </summary>''' <param name="TempDbFile">模板文件所在路徑及模板文件(全局路徑)</param>''' <returns></returns>''' <remarks></remarks>Public Function CheckTempletFileExists(ByVal TempDbFile As String)Return File.Exists(TempDbFile)End Function''' <summary>''' 復(fù)制文件到新位置''' </summary>''' <param name="SourceFile">源文件</param>''' <param name="DestcentFile">目標文件</param>''' <remarks></remarks>Public Sub CopyDbToNewPos(ByVal SourceFile, ByVal DestcentFile)TryFile.Copy(SourceFile, DestcentFile, True)Catch ixp As IOExceptionThrow New Exception(ixp.ToString())End TryEnd Sub

總結(jié)

以上是生活随笔為你收集整理的VB.NET创建/修复/压缩/备份/恢复ACCESS数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。