System.Data.OleDb.OleDbException:定义了太多字段

时间:2009-04-17 20:25:45

标签: c# winforms ms-access .net-3.5 oledbexception

我正在构建一个.NET WinForms应用程序来替换Microsoft Access中的一系列表单(在此处插入集体呻吟)数据库。为了使初始版本完成,我试图使用现有的查询,而不是深入研究数据模型及其明显的设计问题。

我正在使用OleDbCommand对象调用查询并将它们视为存储过程。这在我们用于在办公室中测试应用程序的工作站上运行良好,但在客户端计算机上运行时出现“System.Data.OleDb.OleDbException:定义的字段太多”失败。这两种环境都在运行MS Access 2003,因此客户端计算机上的错误原因并不明显。

我在http://www.eggheadcafe.com/conversation.aspx?messageid=33475714&threadid=33453796发现了一个帖子,说如果列数超过127就会发生这种情况。查询中使用的几个表的列数超过了这个列数(几乎完全缺乏规范化) , 我知道)。我相信这是原因,但无法解释为什么我们的办公室不会发生错误。有什么建议可以解决将数据访问拆分成多个查询的问题吗?

1 个答案:

答案 0 :(得分:1)

我不知道为什么会发生这种情况。

但是,这可能与您办公室与客户端计算机中安装的MDAC组件有关(即MDAC组件包括JET oledb驱动程序)。

这可能会有所帮助。