asynchronous query

partizan

Новичок
asynchronous query

pg_send_query() can send multiple queries to PostgreSQL server and pg_get_result() is used to get query result one by one. It returns result resource. If there is no more results, it returns FALSE.
Если я хочу отправить сразу несколько запросов, а потом получить результаты, их нужно отправлять с разными соединениями, или можно с одним?
С одним соединением мне pg_get_result() возвращает только 1 результат (последнего запроса), а потом FALSE

Вот такой код:

PHP:
pg_send_query( $connection, $query[1]);
pg_send_query( $connection, $query[2]);
pg_send_query( $connection, $query[3]);
pg_send_query( $connection, $query[4]);
pg_send_query( $connection, $query[5]);

while (true)
  {
      while (pg_connection_busy($connection))
      {
       echo "Busy<br>";flush();
       sleep(1);
      };
      
      $res = pg_get_result($connection);

      echo "<br>Resurse:   ".  ($res ? $res: 'false') . '<br>';
      
      if ($res )
      {
          $row = pg_fetch_array($res);
          print_r($row);
          flush();
      }
      else exit('Finished');
  };
 

neko

tеam neko
с разными.
НО при этом, можно несколько запросов посылать в один sendquery.

AFAIR единственное что можно потом делать с этим соединением это отправлять и получать нотификации, ну и проверять, не завершился ли запрос.

из одной сессии сделать 2 нельзя никак.

и асинхронный этот интерфейс в том смысле, что не блокирует приложение.
 
Сверху