我使用JET oleDb 4.0创建DBF文件,但数字字段始终最终为(20.5)大小。这是我在网上阅读的一个已知问题。许多人建议使用我试过的Visual FoxPro oleDb,但是我需要在ArcMap中打开DBF文件,并且出现错误的字段类型错误。我猜这个文件格式不被支持。如果我打开使用FoxPro中的FoxPro oledb创建的DBF并将其导出为DBase IV格式,则可以在ArcMap中打开它。Vb.net,DBF文件,无法设置数字大小(始终为20.5)
但是,当我创建它时,我已经使用“扩展属性= dBase IV”选项,它似乎没有做任何事情。
我必须找到一种方法来获得DBASE IV格式的正确字段大小。有人能帮我吗?
这是我的连接字符串:
提供商= Microsoft.Jet.OLEDB.4.0;数据源= {0};扩展属性= dBase的IV; 这使得总是让数字在20.5大小
提供商= vfpoledb;数据源= {0};整理顺序=一般;扩展属性= dBase的IV; 这使得不兼容的DBF为ArcMap中
谢谢,它现在可行!我只有另一个小问题,即字段不能包含空值。但我只需要改变我的代码插入其他值比空值,它运作良好。 – Math 2014-10-08 19:53:02
@Math,对于较老的dBASE,我不记得它是否允许NULL与NOT NULL,但是您总是可以在create table语句中的相应列之后尝试添加。 – DRapp 2014-10-08 23:53:19
我试过了,它不起作用。对于不允许空设置的较老的dBASE文件您是正确的。但我不再需要它了,因为我删除了空值插入。谢谢! – Math 2014-10-09 12:43:38