OleDbException未处理:从数据库显示信息时出错

时间:2011-11-24 02:05:47

标签: c# visual-studio-2010 ms-access oledb oledbexception

我是使用Visual Studio 2010和Microsoft Access 2007创建应用程序的新手。我已经创建了表单并且运行顺畅而不会出现任何错误。但是,其中一种形式在显示我想要显示的信息时遇到问题。所有创建的表单都具有相同的功能,但是这一个表单运行不正常。

这是不起作用的表单的屏幕截图: enter image description here

错误消息的屏幕截图: enter image description here

请帮忙。感谢。

3 个答案:

答案 0 :(得分:1)

对于Access数据库,该特定错误(IErrorInfo.GetDescription失败并带有E_FAIL 0x80004005)通常意味着您正在尝试访问不存在的字段或表或是关键字。

我怀疑错误可能是位置字段。如果用括号括起所有字段名称,如果是关键字冲突,则错误将消失:

SELECT [position_code], [position_description] FROM [position]

答案 1 :(得分:1)

如果您将列/表名称放在括号中以解决问题。 (位置是SQL保留字。)

select position_code, position_description from [position]

答案 2 :(得分:1)

首先,您必须验证字段和表的名称。可能是它们包含不受支持的文本或字符。如果使用这些字段和表名添加空格,则使用[]将这些标识符括起来。