Parsi Coders
تابعی برای تعمیر و فشرده سازی پایگاه داده Access - نسخه قابل چاپ

+- Parsi Coders (http://parsicoders.com)
+-- انجمن: Software Development Programming (http://parsicoders.com/forumdisplay.php?fid=37)
+--- انجمن: C# Programming (http://parsicoders.com/forumdisplay.php?fid=55)
+--- موضوع: تابعی برای تعمیر و فشرده سازی پایگاه داده Access (/showthread.php?tid=1203)



تابعی برای تعمیر و فشرده سازی پایگاه داده Access - Ghoghnus - 10-31-2011

کد:
public static void CompactAccessDB(string connectionString, string mdbfilename)

        {

            object[] oParams;

            object objJRO =

              Activator.CreateInstance(Type.GetTypeFromProgID("JRO.JetEngine"));

            oParams = new object[] {

            connectionString,

             "Provider=Microsoft.Jet.OLEDB.4.0;Data" +

             " Source=C:\\tempdb.mdb;Jet OLEDB:Engine Type=5"};

            objJRO.GetType().InvokeMember("CompactDatabase",

                System.Reflection.BindingFlags.InvokeMethod,

                null,

                objJRO,

                oParams);

            System.IO.File.Delete(mdbfilename);

            System.IO.File.Move("C:\\tempdb.mdb", mdbfilename);

            System.Runtime.InteropServices.Marshal.ReleaseComObject(objJRO);

            objJRO = null;

        }