使用 VB.Net 应用程序将 Excel 数据导入 SQL Server 表

落在

我找到了几篇关于这个主题的文章,但问题是不同的。我正在尝试使用 VB.net 应用程序将数据从 Excel 2016 文件导入 SQL Server 2017,以便最终用户不需要在他们的机器上安装 SQL Server。我在调试模式下运行应用程序以识别问题。

我再次阅读了有关与以下错误相关的各种实例的文章:

“Microsoft.ACE.OLEDB.15.0”提供程序未在本地计算机上注册

我的代码:

Dim TheData As DataTable = GetExcelData(OpenFileDialog1)

Private Function GetExcelData(File As OpenFileDialog) As DataTable
    Dim oleDbConnection As New OleDbConnection

    Try
        OpenOLEDBConnections(oleDbConnection, "Provider=Microsoft.ACE.OLEDB.15.0;Data Source=" & File.InitialDirectory & _
        File.FileName & "; ;Extended Properties=""Excel 12.0 XML;HDR=YES;""")

        Dim oleDbDataAdapter As OleDbDataAdapter = New OleDbDataAdapter("Select '' as ID, 'AL' as Supplier, LTRIM(RTRIM(GRADE)) AS GRADE, [ship date] as shipdate, LTRIM(RTRIM(coil)) AS coil, L15*1000 AS L15, H15*1000 AS H15 FROM [sheet1$] where COIL is not null group by GRADE, [SHIP DATE], COIL, L15, H15", oleDbConnection)
        Dim dataTable As DataTable = New DataTable()
        oleDbDataAdapter.Fill(dataTable)
        oleDbConnection.Close()

        Return dataTable
    Catch ex As Exception
        oleDbConnection.Close()

        Return Nothing
    End Try

End Function

Private Sub OpenOLEDBConnections(ByRef cnData As OleDbConnection, cnDataConstr As String)

    If Not cnData.State = ConnectionState.Closed Then cnData.Close()
    If cnData.State = ConnectionState.Closed Then
        cnData.ConnectionString = cnDataConstr
        cnData.Open()
    End If

End Sub

在此处输入图片说明

落在

在我花了一天半的时间后,我通过以下链接设法解决了这个问题,并尝试了Manju K Gowda 提到的选项,2012 年 5 月 14 日星期一下午 12:14 Microsoft.ACE.OLEDB.15.0并且还修改了我的连接字符串提供程序从 OLEDB 15.0 到 12.0。

准确地说,在调试或发布模式下构建解决方案时,将配置管理器保持为 x86 而不是 AnyCPU

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 VBA 将 Excel 数据导入 SQL Server 表

使用SSIS脚本任务(VB)将Excel数据导入现有SQL Server表时遇到问题

如何使用vb.net将MS Access数据导入SQL Server

使用VB.NET应用程序将HTML表从剪贴板粘贴到Excel工作表中

从Excel导入到数据表vb.net

使用python将数据从excel文件导入SQL Server

如何从vb.net Windows窗体应用程序访问远程SQL Server数据库

如何使用C#Windows Form应用程序将Excel文件上传到SQL数据库表

使用 VB.NET 表单从 SQL Server 到 Excel 的日期明智的数据检索

尝试使用asp.net Web应用程序将数据插入SQL Server数据库,出现错误

将数据从Excel导入SQL Server

将数据从 Microsoft SQL Server 导入 Excel

使用 vb6 通过 MSFlexigrid 将 XML 数据导入到 SQL 表

使用 VB.NET 将数据从 DataGridView 导出为 Excel 表

将Excel数据导入到现有的SQL Server 2005表中

Excel如何使用Transact SQL从SQL Server导入数据

连接到本地SQL Server数据库的VB.NET WinForms应用程序的正确连接字符串

如何从数据库SQL Server备份特定表并使用vb.net代码将.bak文件保存在计算机中

使用onClick提交按钮通过vb.net表单将数据发布到SQL表

将数据从SQL Server数据库导入HTML表

如何通过使用SQL Server Management Studio将Excel文件作为二进制类型导入数据库表中

将Excel数据导入SQL Server数据库

如何使用SQL Server将本地应用程序与ASP.NET Web服务连接?

使用VB.NET将Unicode /字符集数据插入SQL Server 2012

从SQL Server表将数据插入Excel工作表的列

允许VB.NET应用将Excel文件转换为数据表

如何将数据从PostgreSQL数据库导出到Excel工作表?使用vb.net 2019 Windows窗体

如何从数据表vb.net向SQL Server数据库插入值

如何将数据保存到应用程序 vb.net 中?(不使用数据库或txt文件)