C# OLEDBEException未处理:显示数据库信息时出错

C# OLEDBEException未处理:显示数据库信息时出错,c#,visual-studio-2010,ms-access,oledb,oledbexception,C#,Visual Studio 2010,Ms Access,Oledb,Oledbexception,我正在使用VisualStudio2010和MicrosoftAccess2007创建新的应用程序。我已经创建了表单,它运行顺利,没有任何错误。但是,其中一个表单在显示我要显示的信息时遇到问题。所有创建的表单都具有相同的功能,但这一个表单的功能不好 这是无法正常工作的表单的屏幕截图: 错误消息的屏幕截图: 请帮忙。谢谢。对于Access数据库,该特定错误(IErrorInfo.GetDescription因E_FAIL 0x80004005而失败)通常意味着您试图访问不存在或是关键字的字段或

我正在使用VisualStudio2010和MicrosoftAccess2007创建新的应用程序。我已经创建了表单,它运行顺利,没有任何错误。但是,其中一个表单在显示我要显示的信息时遇到问题。所有创建的表单都具有相同的功能,但这一个表单的功能不好

这是无法正常工作的表单的屏幕截图:

错误消息的屏幕截图:


请帮忙。谢谢。

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

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

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

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

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

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

如果将列名/表名放在大括号内,应该可以解决问题。(位置是SQL保留字。)


如果将列名/表名放在大括号内,应该可以解决问题。(位置是SQL保留字。)


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

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