首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

困扰中,用ADO连接一个DBF文件提示"字段大小过长"该怎么处理

2012-03-18 
困扰中,用ADO连接一个DBF文件提示字段大小过长?在C++BUILDER中用ADO连接一个DBF文件提示 [Microsoft][O

困扰中,用ADO连接一个DBF文件提示"字段大小过长"?
在C++BUILDER中用ADO连接一个DBF文件提示 "[Microsoft][ODBC   dBase   Driver]字段大小过长 ",是什么问题?

1.检查数据表结构与代码追加字段的长度,绝对不超长
2.追加同一条数据时(就是新增相同的数据),凡是在装有C++BUILDER   的机器中运行都不会有此提示,并新增成功,但在没有装C++BUILDER   的机器就会有上述提示,追加失败
3.检查装有C++BUILDER   的机器与没有装C++BUILDER   的系统均为XP(SP2)版本,装有C++BUILDER   的机器与没有装C++BUILDER   机器中的MDAC版本均为2.8
4.一个奇怪的现象,没有装C++BUILDER   的机器在安装本公司的另外一个产品后,
再运行用ADO连接一个DBF文件的程序进行测试,不会有此提示,并新增成功,卸掉本公司的另外一个产品后,又会有上述提示,追加失败.

连接串如下:注释的连接串与没有注释的连接串都会有上述提示

    /*ADOConnection1-> ConnectionString= "Driver={Microsoft   dBASE   Driver   (*.dbf)}; "
                                  "DriverID=277; "
                                  "Dbq= "+AppPath+ "; ";*/

  ADOConnection1-> ConnectionString= "Provider=Microsoft.Jet.OLEDB.4.0; "
        "Password= " ";Data   Source= "+AppPath+ ";Extended   Properties=dBase   5.0; "
        "Persist   Security   Info=True ";

执行代码如下
                ADOQuery1-> Close();
                ADOQuery1-> SQL-> Text=sSQL;
                ADOQuery1-> ExecSQL();


困扰中....

[解决办法]
你使用的数据库引擎错误

1、如果你是通过VFP建立的表,那么得用Microsoft Visual Foxpro Driver,其中又分为数据库模式和文件模式,数据库模式支持长字段名而文件模式不支持
2、dBase连接VFP数据库字段名长度限制是8个字符,你确认没超过,注意是字段名不是字段内容!
[解决办法]
应该是未安装BDE导致的后果

热点排行