热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> 数据库>>正文内容

Sqlserver 中查询Excel

发布时间:2010年03月11日点击数: 路行者

先上SQL:

  1. exec sp_configure 'show advanced options',1 
  2. reconfigure 
  3. exec sp_configure 'Ad Hoc Distributed Queries',1 
  4. reconfigure 
  5.   
  6. SELECT  *    FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0'
  7. 'Data Source=E:\HaierWeb\MyWeb\Doc\abc.xls;Extended Properties=Excel 8.0')...Sheet1$ 

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

员工信息  F2
NULL   姓名
664754 张三
664783 李四

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

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

解决方法:

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

HDR=Yes , 是说第一列当做表头。
IMEX=1 , 是说把表内容混合读取。

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

 

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作