我这么写的:
 SELECT   *      
  FROM   OpenDataSource(   'Microsoft.Jet.OLEDB.4.0',   
      'Data Source="d:\gp1\t1.xls";User   ID=Admin;Password=;Extended   properties=Excel   5.0')...[Sheet1$]   
    
提示:
服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。 
[OLE/DB provider returned message: 找不到可安装的 ISAM。]我的系统是: XP sp2 .SQL server 2000  office XP.
请教高手,谢谢!

解决方案 »

  1.   

    SELECT * FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="d:\gp1\t1.xls";Extended Properties="Excel 5.0;HDR=Yes;";Persist Security Info=False')...Sheet1$
      

  2.   

    User 和ID中间只有一个空格
      

  3.   

    多余的空格去掉,或者就简单的这样就行了
    SELECT *      
    FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="d:\gp1\t1.xls";Extended properties=Excel 5.0')...[Sheet1$]
      

  4.   

    楼上老大请留步,还是不行啊。
    我改后现在又提示:服务器: 消息 7399,级别 16,状态 1,行 1
    OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。提供程序未给出有关错误的任何信息。怎么办啊?
      

  5.   

    我这里没有问题啊,opendatasource访问excel的方法:
    select * 
    from opendatasource('Microsoft.Jet.OLEDB.4.0','Data Source="Excel全文件名";Extended properties=Excel 5.0')...Sheet名后面加$,例如Sheet1$
      

  6.   

    可我这里就是不行啊。我的EXCEL名就是 t1.xls
    是不是需要按装什么啊,我的系统是xp sp2的,照说所有的补丁都应该有了啊,为什么呢?
      

  7.   

    测试过了,不会是 Sheet名 的问题,我也不知道怎么回事了