首页 > 数据库 >C#压缩Access数据库操作

C#压缩Access数据库操作

时间:2023-07-12 11:57:11浏览次数:36  
标签:objJRO string dbFileName C# 数据库 object System Access

方法如下

        /// <summary>
        /// 压缩数据库
        /// </summary>
        /// <param name="dbFileName"></param>
        public static void CompactAccessDB(string dbFileName)
        {
            try
            {
                string connectionString1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbFileName;
                string connectionString2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\temp.mdb";

                object objJRO = Activator.CreateInstance(Type.GetTypeFromProgID("JRO.JetEngine"));
                object[] oParams = new object[] { connectionString1, connectionString2 };

                objJRO.GetType().InvokeMember("CompactDatabase", System.Reflection.BindingFlags.InvokeMethod, null, objJRO, oParams);

                System.IO.File.Delete(dbFileName);
                System.IO.File.Move("C:\\temp.mdb", dbFileName);


                System.Runtime.InteropServices.Marshal.ReleaseComObject(objJRO);
                objJRO = null;
            }
            catch (Exception ex)
            {
                MessageBox.Show("数据库压缩中出现错误!\r\n\r\n" + ex.Message);
            }
        

 

标签:objJRO,string,dbFileName,C#,数据库,object,System,Access
From: https://www.cnblogs.com/Kirito-Asuna-Yoyi/p/CompactAccessDB.html

相关文章

  • 基于C#连接Mysql,并进行增删改查操作
    记录一下今天的学习内容。前置条件(括号里是我用的):VisualStudio (2022)、Mysql(8.0.33CommunityServer)、NavicatPremium(16) 1.开发准备首先,打开VisualStudio,选择控制台应用并创建,框架应该影响不大,我用的.net6.0然后新建一个名为MysqlDbContext.cs的项。......
  • 6、Fusing IMU with complementary sensory data
    将惯性测量单元与补充传感器数据融合当接收到除IMU之外的其他信息,例如GPS或视觉信息时,对ESKF进行校正。在一个设计良好的系统中,这应该使惯性测量单元的偏差可观测,并允许ESKF正确地估计它。有许多可能性,最流行的是GPS+IMU、单目视觉+IMU、立体视觉+IMU。近年来,视觉传感器与IMU的组......
  • C# 选择文件选择设置类型示例
     例子:OpenFileDialogdialog=newOpenFileDialog();dialog.Multiselect=false;//该值确定是否可以选择多个文件dialog.Title="请选择文件";dialog.Filter="图像文件(*.jpg;*.png;*.bmp)|*.jpg;*.png;*.bmp;*.jpg......
  • [TM4] TM4C123G Keil5 新建工程指南
    [TM4]TM4C123GKeil5新建工程指南keil新建工程,选择TM4C123GH6PM芯片,然后在CMSIS勾选CORE,DEVICE勾选Startup(如图),来到新工程界面在SourceGroup1里添加main.c,将SourceGroup重命名为user在Target1目录下添加driverlib文件夹、hardware文件夹、sys文件夹、inc文件夹,utils文件夹以......
  • LeetCode -- 918. 环形子数组的最大和
     遇到环形问题一般有两种考虑方法:1.破环成链2.分为数组中间部分和数组两边部分分别考虑本题采用第二种考虑方法,将原数组分为中间部分和两边部分分别考虑。中间部分即为子数组最大和,两边部分计总和减去中间部分最小和。classSolution{public:intma......
  • sharding-jdbc分库连接数优化
    一.背景:配运平台组的快递订单履约中心(cp-eofc)及物流平台履约中心(jdl-uep-ofc)系统都使用了ShardingSphere生态的sharding-jdbc作为分库分表中间件,整个集群采用只分库不分表的设计,共16个MYSQL实例,每个实例有32个库,集群共512个库.当每增加一台客户端主机,一个MYSQl实例最......
  • C# 关于datetime的转换问题
    项目中时常碰到 Convert.ToDateTime报错的情况例如:数据导入时,如果用户胡乱输入,就会出现异常报错。 解决方式:stringinputDate="2023-7-12";DateTimedate=newDateTime();if(DateTime.TryParse(inputDate,outdate)){date=Convert.ToDateTime(inputD......
  • Prettier 配置指南 .prettierrc.json 文件配置指南
    1.在项目根目录下面,新建.prettierrc.json文件2.prettuer配置{"printWidth":100,"tabWidth":2,"useTabs":true,"semi":true,"singleQuote":true,"trailingComma":"none","b......
  • Visual C# 中XML注释换行
    只需将<para>标记用于诸如<summary>、<remarks>或<returns>等标记内即可 ///<summary>///基类(第1行)///<para>说明:(第2行)</para>///<para>封装一些常用的成员(第3行)</para>///<para>前面要用全角空格才能显示出空格来(第4行)</para>///</s......
  • 「解题报告」Codeforces Round #884 (Div. 1 + Div. 2) Editorial
    比赛地址:Dashboard-CodeforcesRound884(Div.1+Div.2)-Codeforces个人评价:这场是构造专场!A.SubtractionGameProblem-A-Codeforces有一堆石子(应该是石子),每次只能拿走\(a\)块或者\(b\)块,最先不能移动的人输,构造一个数\(n\),使得先手必输。两种构造方法:......