社区
数据库及相关技术
帖子详情
求用BCB进行Access数据库压缩的实例
竹背篼
2004-06-24 09:01:04
如题
...全文
186
6
打赏
收藏
求用BCB进行Access数据库压缩的实例
如题
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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);
BCB
参考手册
6. **
bcb
fun.mdb**:这是一个Microsoft
Access
数据库
文件,可能用于演示或测试
BCB
的
数据库
连接和操作。 7. **Project1.res**:这是编译后的资源文件,包含了项目中的图标、字符串等非代码资源。 通过这些文件,...
C++Builder
数据库
程序设计开发详解
其实,
BCB
开发
数据库
应用程序,就是用
BCB
提供的功能,通过数据链路来操作
数据库
!这里的数据链路就是指操作系统或者是
BCB
提供的一个统一的对
数据库
操作的界面!比如有:ODBC,ADO,BDE等等!我们的
数据库
应用程序...
CSDN 数据技巧
取
Access
640-605 Remote
Access
2.0 考试大纲
Access
Violations(访问冲突)
ACCESS
97关于
数据库
安全的几个问题
AccesS
密码的打击
Access
数据库
操作中出现的怪现象
Access
数据库
导入Mysql的方法之一
ACCESS
数据库
防止下载...
SAP HANA
数据库
数据类型、函数用法、SQL语法
SAP HANA
数据库
数据类型、函数用法、SQL语法
SAP Hana
数据库
sql语法
SAP Hana
数据库
sql语法
数据库及相关技术
1,178
社区成员
18,939
社区内容
发帖
与我相关
我的任务
数据库及相关技术
C++ Builder 数据库及相关技术
复制链接
扫一扫
分享
社区描述
C++ Builder 数据库及相关技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章