zoukankan      html  css  js  c++  java
  • 代码库(2)Excel文件数据导入到SQL Server

    说明
       在实施系统时,经常需将Excel中的数据导入到SQL中
       使用下面一句话即可将Excel数据导入到SQL中,此方法可将数据导入到已有的表结构中
       可直接使用SqlCommand执行即可

    代码
    SELECT 字段1[...] FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'Excel   5.0;DatabASE=[Excel表.xsl文件的路径];HDR=YES;IMEX=1 ', Sheet1$')

    备注:常见问题解决
    【问题一】:已拒绝对 OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 的特殊访问。必须通过链接服务器来访问此提供程序。
    【分析】:这是因为您当前用来访问数据库的登录的权限不够(权限太低)。
    【解决】:要么您还用sa登录,要么修改当前登录的权限,
                    步骤如下:企业管理器→安全性→登录→找到你所用的登录名→右击"属性"→服务器角色→将System Administrator选项打钩→确定即可。

    【问题二】:OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。提供程序未给出有关错误的任何信息。  OLE DB 错误跟踪[OLE/DB Provider 'MICROSOFT.JET.OLEDB.4.0' IDBInitialize::Initialize returned 0x80004005:  提供程序未给出有关错误的任何信息。]。
    【分析】:
          首先先检查一下你用来导入的Excel表是否已经打开,如果打开了,请关闭后重试一下。
    还是不行的话,继续往下看。如果你用来数据库操作的sql语句是用striing字符串保存的,且其中包含着.xsl文件的存放路径。那么问题可能就出在这个路径上。您是否值用了一个斜杠"\"。如果只有一个斜杠的话,在运行前,错误列表中会提示"无法识别转义序列"。一旦运行,该提示就会消失,可能您就是因为这样而没有注意到这错误。
    【解决】:把单斜杠("\") 改成 双斜杠("\\")   如:e:\\aillo\\tt.xsl

    【问题三】:关于【无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "MSDASC" 的实例。】的解决方法
    实际上就是将SQL Server(MSSQLSERVER)和SQL Full-Filter Deamon Launcher(MSSQLSERVER)两个服务的登录身份改为LocalSystem

    【问题四】:不支持对系统目录进行即席更新问题的解决方案
        USE master;  
        GO  
        EXEC sp_configure 'show advanced option', 1  
        RECONFIGURE WITH OVERRIDE;  --加上WITH OVERRIDE  ;  
        GO  

    【问题五】:配置选项 'show advanced options' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。  
        消息 5808,级别 16,状态 1,第 2 行      不支持对系统目录进行即席更新。  

    解决方案:  
        exec sp_configure 'show advanced options', 1;  
        GO  
        RECONFIGURE WITH OVERRIDE;  --加上WITH OVERRIDE  
        GO  

    【问题六】:无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象
    management studio--->服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项:全都不选



  • 相关阅读:
    Silverlight第三方控件收集
    我们三十以后才明白
    修复编译Silverlight"不能找到AppManifest.xaml”的错误
    Android消息通知
    理解和认识udev
    QT进度条
    WARNING: Application does not specify an API level requirement!
    Linux设备驱动中的异步通知与异步I/O
    Qtopia2.2.0 的配置和交叉编译
    Android Menus
  • 原文地址:https://www.cnblogs.com/garfield211/p/2228176.html
Copyright © 2011-2022 走看看