没有关系吧。你select后再排序就可以了,我想当在页面中列出来也还是按照一定的顺序排的,所以显示的时候用order by就可以了。

解决方案 »

  1.   

    确实如此。
    不过楼主可以自己指定顺序啊eg:
    SELECT a1,b2,a2,b1 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="d:\eBook\xx.xls";User ID=Admin;
    Password=;Extended properties=Excel 8.0')...[Sheet1$]
      

  2.   

    看来1楼误会了。
    eg: Excel中四列
    a1 b2 a2 b1
    1 a 2 bSELECT *
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="d:\test.xls";User ID=Admin;
    Password=;Extended properties=Excel 8.0')...[Sheet1$]
    会显示
    a1   a2  b1 b2
    1    2   b  a如果要顺序相同的话需
    SELECT a1,b2,a2,b1
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="d:\test.xls";User ID=Admin;
    Password=;Extended properties=Excel 8.0')...[Sheet1$]
      

  3.   

    To  gmlxf(烛光)
        我是说列的顺序
    TO txlicenhe(马可) 
        可怜我的表有60多列,难道就没有更好的办法了吗...天啊.....
    .....
      

  4.   

    这个是openrowset的限制,不仅Excel,其他数据库也如此.
      

  5.   

    楼主可以考虑在Excel中,将第一列设置为字段名.然后用动态SQL语句来解决字段的顺序问题.