一个ACCESS数据库
一次性写入30000多条的数据
数据库的大小达到8M多
但是删除这30000多条数据后
数据库文件的大小仍然是8M多用ACCESS打开后 里面什么都没有
怎么回事啊?
一次性写入30000多条的数据
数据库的大小达到8M多
但是删除这30000多条数据后
数据库文件的大小仍然是8M多用ACCESS打开后 里面什么都没有
怎么回事啊?
解决方案 »
- 基于UDP协议制定的PC与CAN通讯的通讯协议,有什么好思路实现无回应时重传三次的机制,因为有些通讯命令的执行依赖之前命令的回应状态,感觉处理起来比较麻烦
- 用DC在文本框上写字,鼠标移到文本框上字就消失了。
- 使用CButtonST时出现的问题
- CImageList加载ico图标问题
- 请教终止进程的问题.
- 有关用HDC与位图的问题,在线急等分数100
- 如果操作对话框中的ListView控件?
- 怎样在MFC中利用主对话框的ontimer命令
- ?谁买过 程序员大本营--游戏开发专辑
- SYSTEMTIME结构体 函数
- 如何对驱动程序进行打包 文件是 *.inf 和 *.sys
- 关于CPrintDialog的问题。如何在其DoModal()之后知道是否与打印机正确连接?
有相应的API函数吗?希望通过编写程序来解决这个问题 总不能让使用者自己来压缩数据库啊
static void PASCAL CompactDatabase( LPCTSTR lpszSrcName, LPCTSTR lpszDestName, LPCTSTR lpszLocale = dbLangGeneral, int nOptions = 0 );
throw( CDaoException, CMemoryException );这个或许对你有用.
using namespace ADOCG;
#import "C:\Program Files\Common Files\SYSTEM\ADO\msjro.DLL" no_namespace TCHAR szDestSQL[100];
TCHAR szSQL[100]; ::CoInitialize(NULL);
sprintf(szSQL, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Info.mdb");
IJetEnginePtr jet(__uuidof(JetEngine));
sprintf(szDestSQL, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=InfoTemp.mdb;");
strcat(szDestSQL, "Jet OLEDB:Engine Type=5");
jet->CompactDatabase(szSQL, szDestSQL);
DeleteFile("Info.mdb");
rename("InfoTemp.mdb", "Info.mdb");
::CoUninitialize();