欢迎进入C/C++编程社区论坛,与200万技术人员互动交流 >>进入 2) 压缩*.MDB文件。 #include adojet.h static const TCHAR szSrc[] = _T("Provider=Microsoft.Jet.OLEDB.4.0;") _T("Data Source=C:\\TEST1.MDB;"); //_T("Jet OLEDB:Engine Type=5;Jet OLEDB:D
欢迎进入C/C++编程社区论坛,与200万技术人员互动交流 >>进入
2) 压缩*.MDB文件。
#include
static const TCHAR szSrc[] =
_T("Provider=Microsoft.Jet.OLEDB.4.0;")
_T("Data Source=C:\\TEST1.MDB;");
//_T("Jet OLEDB:Engine Type=5;Jet OLEDB:Database PassWord=???");
static const TCHAR szDst[] =
_T("Provider=Microsoft.Jet.OLEDB.4.0;")
_T("Data Source=C:\\TEST2.MDB;");
//_T("Jet OLEDB:Engine Type=5;Jet OLEDB:Database Password=???");
Jet OLEDB:Engine Type=5表示使用MS JET 4x版本的MDB文件,如果没有给出本属性则系统自动将压缩后的MDB文件转换为当前最新的版本。
CComPtr
// if (SUCCEEDED(Engine.CoCreateInstance(__uuidof(JetEngine))))
if (SUCCEEDED(Engine.CoCreateInstance(L"JRO.JetEngine")))
{
Engine->CompactDatabase(CComBSTR(szSrc), CComBSTR(szDst));
} MS的文档指出自MDAC2.6开始便不再包含JET组件,而MDAC2.7是JRO的最后一个版本,而且JRO不能在WIN64上使用。看样子是M$怂恿我们用SQL SERVER了。
[1] [2]