2

我正在尝试从 VB 2010 将数据写入 Access 2010 表。这是 VB 代码:

        Dim cn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\ssr2011f\be\ssrAnalysisTWEAK.ACCdb")
        cn.Open()
        Dim Str As String = "insert into BSP1 values(" & CInt(pcValue) & ",'" & (hsName) & ") "
        Dim cmd As New System.Data.OleDb.OleDbCommand(Str, cn)
        Dim icount As Integer = cmd.ExecuteNonQuery

我在“cn.Open()”行收到以下错误:

System.Data.dll 中出现“System.InvalidOperationException”类型的第一次机会异常

我也使用连接字符串“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\ssr2011f\be\ssrAnalysisTWEAK.ACCdb;”得到了这个错误。我的 Windows 版本是 7.0。

为什么连接失败?

4

1 回答 1

1

我以前在运行 64 位操作系统的计算机上开发时使用 Access 数据库作为后端时看到过类似的错误。

尝试在 Visual Studio 项目的编译选项中明确定位 x86 平台。

在解决方案资源管理器中,右键单击您的项目并选择属性

选择编译选项卡

单击高级编译选项按钮

目标 CPU下拉列表中,选择“x86”(而不是“AnyCPU”)

当我这样做时,我能够毫无错误地执行您的代码(当然将其指向我自己的访问数据库)。

希望能帮助到你。

于 2014-08-14T17:41:08.343 回答