zoukankan      html  css  js  c++  java
  • Sqlserver 中查询Excel

    先上SQL:

    exec sp_configure 'show advanced options',1
    reconfigure
    exec sp_configure 'Ad Hoc Distributed Queries',1
    reconfigure

    SELECT  *    FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
    'Data Source=E:\HaierWeb\MyWeb\Doc\abc.xls;Extended Properties=Excel 8.0')...Sheet1$

    第一行当做表头。

    其余行当成一种数据类型,且不能转换,如果有文本,有数字, 按出现多的一项显示,其余为Null

    员工信息  F2

    NULL      姓名
    664754    张三
    664783    李四

    Null 处应该是 员工编号 。 前两行是表头。 

    对于这种形式,应该把  数字前多输一个’(单引号) 强行转换为文本格式。快速填入相同内容 选中多个单元格后,输入字符,然后按Ctrl+Enter组合键,即可在选中的每个单元格中填入上述相同的字符。

    解决方法

    SELECT  *    FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
    'Data Source=E:\HaierWeb\MyWeb\Doc\abc.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1;"')...Sheet1$

    HDR=Yes , 是说第一列当做表头。

    IMEX=1 ,  是说把表内容混合读取。

    IMEX=2 , 是指可以对表内容进行 读取 和 写入.

    在OleDb中,如果不存在该Excel,创建表时,自动创建Excel文件.

    Jet 居然支持这么多数据库, 连Html table 也支持。 参考:http://zh.wikipedia.org/zh-cn/Microsoft_Jet_Database_Engine

    查询文本文件:

    文件必须是,号分割文件  
          
      HDR=YES     的时候,第一行被认为是字段名  
      HDR=NO       的时候,第一行被认为是数据  
           
      select   *   from    
      OPENROWSET('MICROSOFT.JET.OLEDB.4.0'  
      ,'Text;HDR=NO;DATABASE=C:\'   --c:\是目录 
      ,Surveys#txt)--aa#txt是文本文件名aa.txt

    alarm   作者:NewSea     出处:http://newsea.cnblogs.com/    QQ,MSN:iamnewsea@hotmail.com

      如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。
  • 相关阅读:
    BZOJ2756:[SCOI2012]奇怪的游戏(最大流,二分)
    AtCoder Grand Contest
    BZOJ2565:最长双回文串(Manacher)
    BZOJ2160:拉拉队排练(Manacher)
    BZOJ3790:神奇项链(Manacher)
    BZOJ2342:[SHOI2011]双倍回文(Manacher)
    BZOJ4887:[TJOI2017]可乐(矩阵乘法)
    BZOJ2555:SubString(SAM,LCT)
    BZOJ1396:识别子串(SAM)
    luogu P1080 国王游戏
  • 原文地址:https://www.cnblogs.com/newsea/p/1682710.html
Copyright © 2011-2022 走看看