/*将Excel的数据导入SQL server*/
/*SELECT * into exceltableFROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',  'Data Source="E:\book1.xls";User ID=;Password=;Extended properties=Excel 5.0')...[Sheet1$]*/
以上代码在SQL查询分析器中可以通过,但是怎样在delphi中用adoquery实现呢?
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('SELECT * into happytable FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="E:\book1.xls";User ID=;Password=;Extended properties=Excel 5.0')...[Sheet1$]');
 adoquery1.open;

解决方案 »

  1.   

    adoquery1.SQL.Add('SELECT * into happytable FROM OpenDataSource( '+Quotedstr('Microsoft.Jet.OLEDB.4.0')+','+Quotedstr('(Data Source="E:\book1.xls";User ID=;Password=;Extended properties=Excel 5.0')')...[Sheet1$]');主要是在有单引号地方用Quotedstr()将它括起来.
      

  2.   

    adoquery1.SQL.Add('SELECT * into happytable FROM OpenDataSource( ''Microsoft.Jet.OLEDB.4.0'',''Data Source="E:\book1.xls";User ID=;Password=;Extended properties=Excel 5.0'')...[Sheet1$]');主要是在有单引号的地方将它变成两个单引号。
      

  3.   

    to:chenylin(陈SIR)
              我按你的方法做了,出现:
    [Error] Unit1.pas(118): Missing operator or semicolon
    这是什么错误呢?
      

  4.   

    to:yonnr
          出现:
            project project1.exe raised exception class eoleexception
          with message'不正常地定义参数对象,提供了不一致或不完整的信息'
    这个是什么错误呢?
      

  5.   

    chenylin(陈SIR)的有点问题:
    改成如下就OK了:
    adoquery1.SQL.Add('SELECT * into Test FROM OpenDataSource( '+Quotedstr('Microsoft.Jet.OLEDB.4.0')+','+Quotedstr('Data Source="E:\book1.xls";User ID=;Password=;Extended properties=Excel 5.0')+'...[Sheet1$]');
      

  6.   

    to:myhgyp
          还是出现:
            project project1.exe raised exception class eoleexception
          with message'不正常地定义参数对象,提供了不一致或不完整的信息'
    这个错误~~
      

  7.   

    改成用yonny(会不会有一天把自己也做成EXE?)(答案:略) 的方法简单一点,我测试通过