CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

请教如何在delphi中对access数据库进行压缩,我使用的数据库驱动是ADO。

楼主czzw(山水)2000-12-16 12:05:00 在 Delphi / 数据库相关 提问

问题点数:20、回复次数:7Top

1 楼Hank(星星农场)回复于 2000-12-16 12:22:00 得分 0

哈哈,有一个OLE下的函数Compact()。管你用什么驱动程序,只要是Access数据库即可Top

2 楼Hank(星星农场)回复于 2000-12-16 12:29:00 得分 0

不好意思,写错了,应该是CompactDataBase()函数。Top

3 楼czzw(山水)回复于 2000-12-23 18:07:00 得分 0

可以给出较详细的用法吗?Top

4 楼WorldCreater(造化天尊)回复于 2000-12-24 20:04:00 得分 0

  Top

5 楼Hank(星星农场)回复于 2000-12-25 11:05:00 得分 10

告诉你源代码,具体的自己分析了  
   
  Function   tmsaUtility.Compactmdb(mdbFileName:String):   Boolean;  
  var   db   :   OLEVariant;  
          tempFile   :   String;  
  begin  
            result   :=   true;  
            try  
            screen.cursor   :=   crSQLWait   ;  
            db   :=   GetDAO_Object   ;  
            result   :=   false;  
            try  
            tempFile   :=   ExtractFilePath   (mdbFilename)   +   '\msaTemp.mdb';  
            db.CompactDataBase(mdbFIleName,tempFile);  
            DeleteFile(mdbFileName);  
            RenameFile   (tempFile,mdbFileName);  
            Result   :=   true;  
            Except   on   EOLEexception   do  
            Result   :=   false;  
            end  
            finally  
            db   :=   Unassigned   ;  
            screen.cursor   :=   crDefault   ;  
            end;  
   
  end;  
  Top

6 楼supershan()回复于 2000-12-25 22:46:00 得分 10

上面的回答可以  
  procedure   CompactDb;  
  var  
      Mydb:_DBEngine;  
      SourceFileName:String;  
      TargetFileName:String;  
  begin  
      SourceFileName:=G_Path+G_CurrentAccount+'.mdb';  
      TargetFileName:=G_Path+'compact.mdb';  
      try  
          Mydb:=CoDBEngine.Create;  
          Mydb.CompactDatabase(SourceFileName,TargetFileName,'',0,'');  
          Mydb.FreeLocks;  
      except  
      end;  
      DeleteFile(SourceFileName);  
      RenameFile(TargetFileName,SourceFileName);  
  end;  
  再写一个给你  
  Top

7 楼dana(dana)回复于 2001-06-09 08:35:00 得分 0

请问一下如果数据库加密码,如何压缩?Top

相关问题

  • ADO是不是最差的数据库底层驱动?
  • 请问哪有Sybase数据库的ADO驱动可以下载?
  • 用Delphi进行ADO数据库编程
  • 用Delphi ADO控件解Access数据库
  • 数据库ado
  • Java 驱动数据库???
  • 数据库驱动程序??
  • DELPHI 中用ADO链接到SQL2000数据库的问题?
  • DELPHI怎么联接Access数据库!!!BDE ADO都可以!!!!
  • 如何用delphi中的ADO访问mysql数据库?

关键词

  • 数据库
  • db
  • mdbfilename
  • sourcefilename
  • targetfilename
  • compactdatabase
  • tempfile
  • mydb
  • mdb
  • try

得分解答快速导航

  • 帖主:czzw
  • Hank
  • supershan

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo