修复ACCESS数据库出错

yangshu4836 2008-03-06 09:58:26
由于ACCESS数据库断电时损坏了,使用ADO方法修复。该数据库版本是ACCESS2000。
代码如下:
::CoInitialize( NULL );
try
{
IJetEnginePtr jet(__uuidof(JetEngine));
jet->CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Dispatch.mdb",
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;Jet OLEDB:Engine Type=5");
MessageBox("Compact complete");
}
catch(_com_error &e)
{
MessageBox((LPCTSTR)e.Description(),"error",MB_OK);
}

::CoUninitialize();

可是修复后数据库中损坏的表变为MSysCompactError表,原因是什么?是不是版本的问题?
我的环境是XP SP2+VS2003+ACCESS2000
用ACCESS自带的压缩和修复数据库选项可以正常修复。。。

...全文
145 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangshu4836 2008-03-06
  • 打赏
  • 举报
回复
shakaqrj:
test.mdb是修复后的新文件

tabby:
对一个没损坏的数据库文件压缩没问题。
去掉Jet OLEDB:Engine Type=5也试过,都不行。
内存泄漏 2008-03-06
  • 打赏
  • 举报
回复
奇怪,你对别的数据库文件进行压缩有问题吗??
另外,jet-> CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Dispatch.mdb",
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;Jet OLEDB:Engine Type=5");红色的删掉再试试..
mr.zhoux 2008-03-06
  • 打赏
  • 举报
回复
http://support.microsoft.com/kb/230501/EN-US/

NOTE: The Jet OLEDB:Engine Type=4 is only for Jet 3.x format MDB files. If this value is left out, the database is automatically upgraded to the 4.0 version (Jet OLEDB:Engine Type=5). See the following table for appropriate values for Jet OLEDB:Engine Type:

你再看看哪错了..记着初始化OLE
shakaqrj 2008-03-06
  • 打赏
  • 举报
回复
我用的没问题
不过我是用压缩,不是修复
你的test.mdb是新的文件么?
yangshu4836 2008-03-06
  • 打赏
  • 举报
回复
sangermax:
如果Jet OLEDB:Engine Type=4会提示:“不能执行这项操作;在低版本的数据库中该版本的特性不可用”。
mr.zhoux 2008-03-06
  • 打赏
  • 举报
回复
Jet OLEDB:Engine Type=4 呢?
DTcms V4.0源码说明: 版本号:V4.0.0 数据库:MSSQL2005、ACCESS DTcms 4.0增强与改进的功能有: 1、增加了视频功能,会员注册部分进行了整改; 2、使用了新上传控件,FLASH和HTML5自行切换; 3、使用了新的弹出窗插件; 4、前后台界面全新设计,后台兼容IE8的响应式; 5、IIS7.0以上应用池用集成模式不需要任何设置即可完美运行; 6、对查询分页进行改进与优化; 7、增加了分站概念,支持每个站子单独设置站点信息; ...... ===================更新日志==================== 2015年5月16日修正一下发布出现的文件不存在的错误; 2015年5月16日修正一下删除用户出错问题;2015年5月24日修复日志: 1、部分订单无法提交异常BUG(已修复) 2、360浏览器编辑页面下拉菜单被遮挡BUG(已修复) 3、PC模板会员中心订单详情页支付按钮链接错误(已修复) 4、PC模板支付成功后显示提示消息样式丢失问题(已修改) 5、IIS上传超30M显示404未知错误,修改Web.config文件,修改文件最大上传文件为50M(已修改) 6、商品图片放大镜定位错乱问题(已修复) =============2015年6月7日修复日志================= 1、后台导般菜单管理上传图标成功后没有回调地址BUG(已修复) 2、后台非超级管理员后台回复评论时提示无权限BUG(已修复) 3、后台上传文件大小设置为0时上传附件失败BUG(已修复) 4、2015年6月9日修复ACCESS分页显示错误的BUG(已修复) =============2015年6月29日修复日志================= 1、后台上传文件时报错,无法删除旧图片BUG(已修复) 2、后台修改栏目类别时JS提示change2cn未定义(已修复) 3、后台友情链接插件无法上传文件BUG(已修复) 4、支付接口回调地址不正确BUG(已修复) 5、后台查询评论时发生错误BUG(已修复) 6、后台artdialog插件在弹窗确定取消时显示回调错误问题(已修复) 7、再次修复上传图片时可跨目录删除文件(高危漏洞)(已修复) =============2015年9月18日修复日志================= 1、后台频道URL配置设置为栏目页时前台发生异常BUG(已修复) 2、后台修改站点信息时删除菜单时发生导常BUG(已修复) 1、创建频道时数据库如没有默认值时加载出错BUG(已修复) 2、前台会员注册过滤用户名不严格导致SQL注入高危漏洞(已修复) 3、前后台输入框无法输入小键盘数字的BUG(已修复) 4、ACCESS版本用户申请取回密码发送邮件出错的BUG(已修复)

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧