将数据写入Access 2010表格VB 2010

时间:2012-06-18 16:04:55

标签: ms-access-2010

我正在尝试从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。

为什么连接失败?

1 个答案:

答案 0 :(得分:1)

在使用Access数据库作为后端,而在运行64位操作系统的计算机上进行开发之前,我看到过这样的错误。

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

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

选择编译标签

点击高级编译选项按钮

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

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

希望它有所帮助。