关于C#访问DBF中出现 “外部表不是预期的格式”的问题

_依梵 2010-01-12 09:42:51
数据查询的时候没有任何问题。代码如下
DataTable dtData = DBFConn.ExecuteDataTable(Path.GetDirectoryName(frmMain.HcDbDinDataFilePath), "Select * from DinData");
但是在插入数据时就开始出现外部表不是预期的格式的问题
string sqlStr = string.Format("insert into [District.dbf] (Id,Name,Address) values ('{0}','{1}','{2}')", id, name, address);
DBFConn.ExecuteNonQuery(Path.GetDirectoryName(_frmMain.HcDbDistrictFilePath), sqlStr);

ExecuteDataTable代码如下
OleDbConnection selectConnection = new OleDbConnection(string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=dBASE 5.0;Mode=Share Deny None;Password=;User ID=;Data Source={0}", new object[] { directory }));
selectConnection.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter(commandText, selectConnection);
DataTable dataTable = new DataTable();
dataTable.Locale = CultureInfo.InvariantCulture;
adapter.Fill(dataTable);
return dataTable;

ExecuteNonQuery代码如下
OleDbConnection connection = new OleDbConnection(string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=dBASE IV;Password=;User ID=;Data Source={0}", new object[] { directory }));
connection.Open();
OleDbCommand command = new OleDbCommand(commandText, connection);
return command.ExecuteNonQuery();

网上查过了无果,求达人解答,至于语句在VF里能够执行。
...全文
442 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
_依梵 2010-01-12
  • 打赏
  • 举报
回复
唉,换了vfpoledb居然可以了...不过还要安装,感觉很麻烦,不管怎么说还是搞定了。。
特别 2010-01-12
  • 打赏
  • 举报
回复
你按照上面的连接字符串试试了
这个我也不能肯定啊,反正你VFP建立的表用Dbase4来操作,估计不妥的
_依梵 2010-01-12
  • 打赏
  • 举报
回复
断点调试
OleDbConnection connection = new OleDbConnection(string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=dBASE IV;Password=;User ID=;Data Source={0}", new object[] { directory }));
connection.Open();
OleDbCommand command = new OleDbCommand(commandText, connection);
//以上都没问题
return command.ExecuteNonQuery();
执行command.ExecuteNonQuery()后抛出异常。
这样也说明连接有问题?
特别 2010-01-12
  • 打赏
  • 举报
回复
特别 2010-01-12
  • 打赏
  • 举报
回复
既然是在VFP中执行没问题,可能是你连接字符串提供的版本信息过低
看看这里关于VFP的连接字符串,一个一个地测试一下吧
http://www.connectionstrings.com/visual-foxpro

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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