例如我现在要导入一张《利润及利润分配表》EXCEL的数据到SQL中,由于报表格式的缘故,前面开始的几行是报表的表头,不需要导入的。从第4行开始才是真正需要导入SQL的数据,怎么样用SQL语句/SQL编程来实现啊?OpenDataSource的方法好像没有制定从第几行开始读取数据的参数可以指定的?
请高手指教一下,谢谢!

解决方案 »

  1.   

    OpenDataSource 最多只能设置第1行是字段名/还是实际数据, 不能指定从第X行开始导入。
      

  2.   

    select * from 
    OpenDataSource('MICROSOFT.JET.OLEDB.4.0', 'Excel 8.0; HDR=NO; IMEX=1; DATABASE=c:\利润表.xls')...[Sheet1$]
    这里面的HDR=NO; IMEX=1分别是什么参数啊?什么作用?
      

  3.   

    HDR=NO  -- 第1行是数据, =YES 第1行是列名
    IMEX=1     这个不用太关心, 如果不设置这个选项的话, 那么字母数字混合的列在导入的时候, 有些数据导不进去, 会变成NULL
      

  4.   

    SELECT * FROM 
    OpenDataSource('MICROSOFT.JET.OLEDB.4.0','Data Source="c:\利润表.xls";User ID=;Password=;Extended Properties=Excel 8.0;HDR=YES; IMEX=1;')
                  ...[Sheet1$]这样写不行的吗?