procedure   TForm1.SpeedButton1Click(Sender:   TObject); 
var   tablename:string; 
begin 
    tablename:='test5.dbf'; 
    adoquery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data   Source=D:\dbf;Extended   Properties=dbase   5.0;Persist   Security   Info=True'; 
    
try 
    begin 
    with   AdoQuery1   do 
    begin 
        close; 
        sql.Clear; 
        sql.Add('select   *   into   '+tablename+'   from   SP_SOFTUSER   in   [ODBC][ODBC;Driver=Microsoft   ODBC   for   Oracle;UID=SPARE_PART;PWD=MANAGER;SERVER=O9IDB]'); 
        ExecSQL; 
    end; 
    showmessage('成功导出为dbf文件.'); 
end 
except 
    showmessage('导出失败!'); 
end; 
end; 
代码主要实现将oracle中某张表导出到指定目录下的dbf文件。
执行时总出错:microsoft   jet   数据库引擎找不到输入表或查询'SP_SOFTUSER'。确定它是否存在,以及它的名称的拼写是否正确。 
跪求解决方案!!!在线等!!!高分酬谢!!!

解决方案 »

  1.   

    如果你确定语法没有问题,并且SP_SOFTUSER确实存在的话,你可以查查SP_SOFTUSER的Schema是什么,然后调用的时候使用SchemaName.SP_SOFTUSER,
    例如:SP_SOFTUSER的SchemaName是dbo,那么你就使用SELECT * FROM dbo.SP_SOFTUSER
      

  2.   

     
    sql.Add('select  *  into  '+tablename+'  from  SP_SOFTUSER  in  [ODBC][ODBC;Driver=Microsoft  ODBC  for  Oracle;UID=SPARE_PART;PWD=MANAGER;SERVER=O9IDB]'); 
    上面这条用相应的值替换后看看能不能在SQL里正确执行。