我的是Delphi6+mysql4.1,用的是TZmySQLQuery控件. 
首先生成一个Temp_T: 
TZmySQLQuery1.SQL.Add( 'create       temporary       temp_T       tmpName       select       *       from       myTable '); 
TZmySQLQuery1.EexcSQL;//可以成功执行 
然后,我想在DBGrid里显示结果 
TZmySQLQuery2.SQL.Add(select       *       from       Temp_T   where   CONDITION '); 
TZmySQLQuery2.Open; 
----------为什么提示Temp_T不存在? 
请问有何方法访问临时表的数据并显示出来? http://www.cnblogs.com/confach/articles/473206.html有一段PHP访问MYSQL临时表的: 
/*   Create   table   doesn 't   return   a   resultset   */ 
if   (mysqli_query($db, "CREATE   TEMPORARY   TABLE   mybook   LIKE   book ")   ===   TRUE)   { 
      printf( "Table   mybook   successfully   created.\n "); 

else 

        echo   'error <br> '; 
} $sql= "select   *   from   book   limit   10 "; 
/*   Select   queries   return   a   resultset   */ 
if   ($result   =   mysqli_query($db,$sql))   { 
      printf( "Select   returned   %d   rows.\n ",   $result-> num_rows);       /*   free   result   set   */ 
        mysqli_free_result($result); 
} if   ($result   =   mysqli_query($db, "SELECT   *   FROM   mybook ",   MYSQLI_USE_RESULT))   {       if   (mysqli_query($db, "SET   @a:= 'this   will   not   work ' "))   { 
              printf( "Error:   %s\n ",   $db-> error); 
      } 
      mysqli_free_result($result); 
} ============================================= 
在D6中就不行吗?       

解决方案 »

  1.   

    TZmySQLQuery1.SQL.Add(   'create               temporary               temp_T               tmpName               select               *               from               myTable   ');  TZmySQLQuery1.SQL.Add(select               *               from               Temp_T       where       CONDITION   ');  
    TZmySQLQuery1.EexcSQL;
      

  2.   

    用ZmySQLQuery1.EexcSQL方法也不行的