• Excel导入数据库


    今天要用Excel导入 mssqlserver 2008(x64)数据库数据。

    @strExcelSheetName 为EXCEL中单元薄的列名
    SET @strExcelPath = '''Microsoft.JET.OLEDB.4.0'',''Data Source="' + @strExcelPath + '";User ID=Admin;Password=;Extended properties=Excel 5.0'''
    
    'SELECT ' + @strExcelFiled +' INTO ##Temp FROM OpenDataSource('+ @strExcelPath +')...'+ @strExcelSheetName +'$ '

     执行以后出现

    因为 OLE DB 访问接口 'Microsoft.Jet.OLEDB.4.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。

    的错误。 需要下载一个最新的驱动

    http://www.microsoft.com/en-us/download/details.aspx?id=13255

    下载一个ACE.Oledb.12.0 for X64位的驱动,并把连接字符串Microsoft.jet.Oledb.4.0 更改为 Microsoft.ACE.OLEDB.12.0

    之后又出现

    SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。

    的错误。解决方法:

    服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->允许进程内   勾上即可

  • 相关阅读:
    过滤器
    JSTL自定义标签
    EL表达式自定义函数
    和 区别
    JSTL标签
    jsp内置对象
    Java堆、栈和常量池以及相关String的详细讲解(转)
    jsp和servlet学习总结
    JAVA多线程实现的两种方式
    redis示例
  • 原文地址:https://www.cnblogs.com/ANLOG/p/2628490.html
Copyright © 2020-2023  润新知