社区
数据库及相关技术
帖子详情
求用BCB进行Access数据库压缩的实例
竹背篼
2004-06-24 09:01:04
如题
...全文
210
6
打赏
收藏
求用BCB进行Access数据库压缩的实例
如题
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
duchuan
2004-06-28
打赏
举报
回复
建议采用我上面的程序,其中可以删除
Adoobj.Clear();
if(!FileExists(SourceFile)) //检查源库是否存在
return;
if(FileExists(TargetFile)) // 不允许目的库存在
DeleteFile(TargetFile);
加上:
if(OpenDialog1->Execute())
{
FName=OpenDialog1->FileName;
方便对话框选择源文件和目标文件。如果要设置覆盖的接受或拒绝,在OpenDialog1的OnCanClose事件中设置。
wlg68
2004-06-28
打赏
举报
回复
void TFrmMain::CompactDatabase(String SourceFile,String SourcePwd, String TargetFile,String TargerPwd)
{
if(!FileExists(SourceFile)) //检查源库是否存在
return;
if(FileExists(TargetFile)) // 不允许目的库存在
DeleteFile(TargetFile);
String ProviderSrc = "Provider=Microsoft.Jet.OLEDB.4.0" ";Data Source=" + SourceFile +
";Jet OLEDB:Database Password=" + SourcePwd;
String ProviderDes = "Provider=Microsoft.Jet.OLEDB.4.0" ";Data Source=" + TargetFile +
";Jet OLEDB:Database Password=" + TargerPwd;
try
{
Variant Adoobj=Variant::CreateObject("JRO.JetEngine");
Adoobj.OleProcedure("CompactDatabase",WideString(ProviderSrc),WideString(ProviderDes));
Adoobj.Clear();
}
catch(Exception &e)
{
return;
}
CopyFile((TargetFile).c_str(), (SourceFile).c_str(),false);
DeleteFile(TargetFile);
}
我感觉上面的还是可行的啊,我就有过上面的编程经历 啊!
heguxun
2004-06-25
打赏
举报
回复
void TFrmMain::CompactDatabase(String SourceFile,String SourcePwd, String TargetFile,String TargerPwd)
{
if(!FileExists(SourceFile)) //检查源库是否存在
return;
if(FileExists(TargetFile)) // 不允许目的库存在
DeleteFile(TargetFile);
String ProviderSrc = "Provider=Microsoft.Jet.OLEDB.4.0" ";Data Source=" + SourceFile +
";Jet OLEDB:Database Password=" + SourcePwd;
String ProviderDes = "Provider=Microsoft.Jet.OLEDB.4.0" ";Data Source=" + TargetFile +
";Jet OLEDB:Database Password=" + TargerPwd;
try
{
Variant Adoobj=Variant::CreateObject("JRO.JetEngine");
Adoobj.OleProcedure("CompactDatabase",WideString(ProviderSrc),WideString(ProviderDes));
Adoobj.Clear();
}
catch(Exception &e)
{
return;
}
CopyFile((TargetFile).c_str(), (SourceFile).c_str(),false);
DeleteFile(TargetFile);
}
竹背篼
2004-06-24
打赏
举报
回复
不行啊
void Variant::OleProcedure(const String& name, P1 p1, P2 p2)
{
TAutoArgs<2> args;
args[1] = p1; args[2] = p2;
OleProcedure(name, static_cast<TAutoArgsBase*>(&args));//到这里出错了
}
叶子哟
2004-06-24
打赏
举报
回复
抄的
// 用ADO压缩Access2000库
#include "utilcls.h"
void CompactDatabase(String f1,String psw1, String f2,String psw2)
{
String Provider1="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ f1 + ";Jet OLEDB:Database Password=" + psw1;
String Provider2="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ f2 + ";Jet OLEDB:Database Password=" + psw2;
Variant Adoobj=Variant::CreateObject("JRO.JetEngine");
Adoobj.OleProcedure("CompactDatabase",Provider1,Provider2);
AdoObj.Clear( ); // 释放 ADO对象
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String f1="yhecdagl1.mdb"; // 源库1
String psw1="yhecdagl"; // 密码1
String f2="yhecdagl2.mdb"; // 新目的库2
String psw2="yhecdagl2"; // 新密码2
String dir=ExtractFilePath(Application->ExeName);
if (FileExists(f2))
DeleteFile(f2);
CompactDatabase(dir+f1,psw1,dir+f2,psw2);
ShowMessage("Finished");
}
竹背篼
2004-06-24
打赏
举报
回复
AnsiString sProvider,SPath,DPath,Path,temp;
WideString TempMDBFile,ConnectStr,CurMDBFile;
sProvider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
TempMDBFile = ExtractFilePath(Application->ExeName)+"Temp.mdb";
FilePath = sProvider + FilePath +";Jet OLEDB:Database Password=test";
temp = sProvider + TempMDBFile+";Jet OLEDB:Database Password=test";
TempMDBFile = temp ;
CurMDBFile = FilePath;
JetEngine1->CompactDatabase(CurMDBFile,TempMDBFile);
你必须知道的25道JavaScript核心面试题
25道核心JavaScript面试题 原文地址:https://www.toptal.com/javascript/interview-questions 在多年的程序设计生涯里,我常常面临着各种新的语言,新的工具。但是语言、工具最终也仅仅为工具,最终目的是分析问题,解决问题。虽然常年在一个领域,一种语言里摸爬滚打,可能对语言本身的理解更为深刻,即使是有意识的去系统、全面的学习了解这种语言的,
你应该知道的25道Javascript面试题
题目来自 25 Essential JavaScript Interview Questions。闲来无事,正好切一下。 一 What is a potential pitfall with using typeof bar === "object" to determine if bar is an object? How can this pitfall be avoided? 老生常谈...
数据库及相关技术
1,178
社区成员
18,938
社区内容
发帖
与我相关
我的任务
数据库及相关技术
C++ Builder 数据库及相关技术
复制链接
扫一扫
分享
社区描述
C++ Builder 数据库及相关技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章