欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#使用晚綁定來實現(xiàn)壓縮Access數(shù)據(jù)庫的方法

 更新時間:2014年08月07日 15:14:04   投稿:shichen2014  
這篇文章主要介紹了C#使用晚綁定來實現(xiàn)壓縮Access數(shù)據(jù)庫的方法,項目開發(fā)中有一定的實用價值,需要的朋友可以參考下

本文實例講述了C#使用晚綁定來實現(xiàn)壓縮Access數(shù)據(jù)庫的方法,通常來說VB對Com后期綁定支持得很好,在C#中可以使用反射來實現(xiàn)。具體方法如下:

函數(shù)實現(xiàn)代碼如下:

public static void CompactAccessDB(string strMdbName)
{
   string TempMdbName = Application.StartupPath + @"\Temp.mdb";
 
   //創(chuàng)建 Jet 引擎對象
   object objJetEngine = Activator.CreateInstance(Type.GetTypeFromProgID("JRO.JetEngine"));
 
   //設(shè)置參數(shù)數(shù)組
   //根據(jù)你所使用的Access版本修改 "Jet OLEDB:Engine Type=5" 中的數(shù)字.
   //5 對應(yīng) JET4X 格式 (access 2000,2002)
 
   object[] objParams = new object[] {
     String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}",strMdbName), //輸入連接字符串
     String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Jet OLEDB:Engine Type=5",TempMdbName) //輸出連接字符串
     };
 
   //通過反射調(diào)用 CompactDatabase 方法
   objJetEngine.GetType().InvokeMember("CompactDatabase",
       System.Reflection.BindingFlags.InvokeMethod,
       null,
       objJetEngine,
       objParams);
 
   //刪除原數(shù)據(jù)庫文件
   System.IO.File.Delete(strMdbName);
   //重命名壓縮后的數(shù)據(jù)庫文件
   System.IO.File.Move(TempMdbName, strMdbName);
   //釋放Com組件
   System.Runtime.InteropServices.Marshal.ReleaseComObject(objJetEngine);
   objJetEngine = null;
}

那么為什么要使用晚綁定呢?可以直接在項目中添加對 JRO.JetEngine 組件的引用來實現(xiàn)。

在多人協(xié)作的開發(fā)環(huán)境中,添加引用需要簽出項目文件進(jìn)行修改.如果有組員機器上沒有這個組件,她就會無法編譯改動后程序.
而采用這種方式就很方便,復(fù)制過去就能用.不需要對項目進(jìn)行修改.
雖然晚綁定有小小性能損失,換來的方便性還是劃算的. 而且也不是經(jīng)常會用到這個功能.

對于有密碼的access文件怎么處理呢?

很簡單的,就是在輸入連接字符串中增加密碼的設(shè)置即可。
這樣默認(rèn)壓縮后的mdb就沒有密碼,如果希望壓縮后的mdb也有密碼,就在輸出的連接字符串里面增加密碼設(shè)置即可.
這個方法其實也可以用來修改mdb的密碼,取消mdb密碼,給mdb設(shè)置密碼.

相關(guān)文章

  • C#簡單實現(xiàn)文件上傳功能

    C#簡單實現(xiàn)文件上傳功能

    這篇文章主要介紹了C#簡單實現(xiàn)文件上傳功能,利用MVC+EF+LigerUI 實現(xiàn)的upload上傳功能,感興趣的小伙伴們可以參考一下
    2016-03-03
  • C# Winform調(diào)用百度接口實現(xiàn)人臉識別教程(附源碼)

    C# Winform調(diào)用百度接口實現(xiàn)人臉識別教程(附源碼)

    這篇文章主要介紹了C# Winform調(diào)用百度接口實現(xiàn)人臉識別教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • C#實現(xiàn)閃動托盤圖標(biāo)效果的方法

    C#實現(xiàn)閃動托盤圖標(biāo)效果的方法

    這篇文章主要介紹了C#實現(xiàn)閃動托盤圖標(biāo)效果的方法,涉及C# ImageList控件的使用技巧,需要的朋友可以參考下
    2016-06-06
  • C#使用HttpWebRequest重定向方法詳解

    C#使用HttpWebRequest重定向方法詳解

    在本篇內(nèi)容里小編給讀者們整理了關(guān)于C#使用HttpWebRequest重定向方法和相關(guān)知識點,需要的朋友們參考下。
    2019-03-03
  • 使用Spire.Barcode程序庫生成二維碼的實例解析

    使用Spire.Barcode程序庫生成二維碼的實例解析

    這篇文章主要介紹了使用Spire.Barcode程序庫生成二維碼的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • FileStream常用的屬性與方法總結(jié)

    FileStream常用的屬性與方法總結(jié)

    本篇文章主要是對FileStream常用的屬性與方法進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • C#實現(xiàn)銷售管理系統(tǒng)

    C#實現(xiàn)銷售管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)銷售管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C#調(diào)用pyd的方法

    C#調(diào)用pyd的方法

    這篇文章主要介紹了C#調(diào)用pyd的方法,幫助大家在項目中實現(xiàn)c#代碼與python代碼交互,在C#中調(diào)用python,也可以在python中調(diào)用C#.
    2020-11-11
  • C#小程序15位轉(zhuǎn)18位身份證號代碼

    C#小程序15位轉(zhuǎn)18位身份證號代碼

    現(xiàn)在我們使用的都是18位身份證號,而以前都是15位身份證號,而如何將15位身份證號轉(zhuǎn)18位身份證號轉(zhuǎn)換為18位身份證號呢?
    2013-02-02
  • C#逆變與協(xié)變詳解

    C#逆變與協(xié)變詳解

    這篇文章主要為大家詳細(xì)介紹了C#逆變與協(xié)變的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08

最新評論