外部表不是预期的格式

是个头疼的问题,我用各种数据库软件(access2003,sqlsever,excel,vtf)来打开它,是个*.db(15M)全都提示----“外部表不是预期的格式”,... 是个头疼的问题,我用各种数据库软件(access2003,sqlsever,excel,vtf)来打开它,是个*.db(15M)
全都提示----“外部表不是预期的格式”,我不知道咋弄了。
而且本机MDAC_TYP也是2.8的版本了。在线等。。
就是我想打开我自己机器上的一个数据库文件,是*.db后缀,各种数据库都打不开,提示"外部表不是预期的格式",MDAC_TYP是电脑关于数据库的核心驱动,我已经更新到最新了.还不行,望指点..

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
对问题的进一步说明,我很肯定数据库没有损坏,没有操作不当,软件都没有问题,现在怀疑是数据库经过加密,那么如何处理呢。
展开
 我来答
旷野十三
2006-11-11 · TA获得超过1884个赞
知道小有建树答主
回答量:1284
采纳率:0%
帮助的人:424万
展开全部
有很多因素会导致这种情形的出现:源文件受损,Access 不完整,操作不当,等等。通常先检查操作是否符合正常的步骤。导入功能最关键的一步是选择文件类型。兼容 dbf 表的格式有 dbase 5,dbasse III,dbase IV 三种,你不妨每种都试一下。如果还不行,那就是其他因素了。解决的办法很简单:重新拷贝一份,应当可以的。

在DELPHI中使用ADO直接访问Excel数据文件

要用DELPHI中的ADO系列控件访问Excel数据文件,首先应该建立一些基本概念。你需要将一个Excel数据文件想
象为一个关系数据库,Excel文件中的每个工作表就对应该数据库中的一个表,而工作表中的每一列当然就是表
的列了。然后,按照下列面的秘诀进行就可以。

1.设置ADOConnection的ConnectionString
构造ConnectionString时,OLE DB的提供者要选择Microsoft Jet 4.0 OLE DB Provider作为ADO的驱动程序。
这本来是用于连接Access数据库的驱动程序,但也可打开Excel文件。
连接的数据库名称当然就是你要打开的Excel文件,注意扩展名是*.xls,而不是*.mdb。
最关键的一点是,还要设置扩展属性Extended Properties为“Excel 8.0”,否则,测试连接时会报告无法
识别数据格式的错误。Extended Properties的属性值在“所有”参数页中输入。
最后,设置完成后的ConnectionString中的各项参数为:
Provider=Microsoft.Jet.OLEDB.4.0
Data Source=MyExcelFile.xls
Extended Properties=Excel 8.0
Persist Security Info=False

2.设置ADODataSet或ADOTable
将ADODataSet或ADOTable连接到刚才的ADOConnection。如果不用ADOConnection,也可以参照上面的方法
直接设置ADODataSet或ADOTable的ConnectionString属性。对于ADODataSet,需要将CommandType属性设置
为cmdTableDirect,而对于ADOTable,则将TableDirect属性设置为True。因为,访问Excel文件是直接的
数据文件访问,不是通过SQL语句来操作游标访问的。如果不设置直接访问,则系统会报告SQL语句格式错
误等信息。
然后,当你下拉ADODataSet中的CommandText属性或ADOTable的TableName属性时,就可以选择到要打开的工
作表了。注意,表名后面多了加一个$符号。

3.打开ADODataSet或ADOTable
casparleo
2006-11-09
知道答主
回答量:67
采纳率:0%
帮助的人:54.7万
展开全部
1、楼主说的那些打开DB的软件并不是万能的,Sybase SQL Anywhere也有此类型的数据库文件,它和*.log是配合工作的,一旦数据库发生错误,相关程序会调用*.log文件来恢复数据表。所以DB只是个文件类型,使用此类型的程序很多,但是用什么程序能打开它,还要看是什么软件创建的*.db文件

2、被保护的数据库
例如用Access工作组工具定义一个工作组如:MyOwnAccess,添加一个用户如:MySelf,用这个用户登陆,然后把老数据库倒过来,定义所有的功能只给MySelf一个人,让其他的用户没有任何权限。然后把工作组文件一起打包,修改连接Access数据库的语句,如: DRIVER=Microsoft Access Driver (*.mdb);UID=20010202;UserCommitSync=Yes;" & "SystemDB=" & App.Path & "\SYSLOG;DBQ=" & MdbPathName & ";pwd=54839202" SYSLOG为改名称后的Access工作组文件。只要把密码设置好就可以防止别人打开了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
icboy
2006-11-11 · TA获得超过165个赞
知道小有建树答主
回答量:544
采纳率:0%
帮助的人:370万
展开全部
把后缀名改为.mdb

用ACCESS打开
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gudanlang
2006-11-09 · TA获得超过577个赞
知道小有建树答主
回答量:311
采纳率:0%
帮助的人:213万
展开全部
用datebase打开试一下.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d37f8537b
2006-11-08
知道答主
回答量:12
采纳率:0%
帮助的人:0
展开全部
paradox的*.db文件,如果是正常的文件用ACCESS就能打开了,,你这可能是表被破坏了,比如说电脑突然死机造成索引头损坏什么的....先修复一下试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式