<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.pgsql.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'de',
  ),
  'this' => 
  array (
    0 => 'function.pg-send-query.php',
    1 => 'pg_send_query',
    2 => 'Sendet eine asynchrone Abfrage',
  ),
  'up' => 
  array (
    0 => 'ref.pgsql.php',
    1 => 'PostgreSQL-Funktionen',
  ),
  'prev' => 
  array (
    0 => 'function.pg-send-prepare.php',
    1 => 'pg_send_prepare',
  ),
  'next' => 
  array (
    0 => 'function.pg-send-query-params.php',
    1 => 'pg_send_query_params',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'de',
    'path' => 'reference/pgsql/functions/pg-send-query.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.pg-send-query" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">pg_send_query</h1>
  <p class="verinfo">(PHP 4 &gt;= 4.2.0, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">pg_send_query</span> &mdash; <span class="dc-title">
   Sendet eine asynchrone Abfrage
  </span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.pg-send-query-description">
  <h3 class="title">Beschreibung</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>pg_send_query</strong></span>(<span class="methodparam"><span class="type"><a href="class.pgsql-connection.php" class="type PgSql\Connection">PgSql\Connection</a></span> <code class="parameter">$connection</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$query</code></span>): <span class="type"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span>|<span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></span></div>

  <p class="para rdfs-comment">
   <span class="function"><strong>pg_send_query()</strong></span> sendet eine oder mehrere asynchrone
   Abfragen über die Verbindung <code class="parameter">connection</code>. Im
   Unterschied zu <span class="function"><a href="function.pg-query.php" class="function">pg_query()</a></span> können hier mehrere
   Abfragen auf einmal an PostgreSQL gesendet und die Ergebnisse
   nacheinander mit <span class="function"><a href="function.pg-get-result.php" class="function">pg_get_result()</a></span> geholt werden.
  </p>
  <p class="para">
   Die Ausführung eines Skripts wird während der Abarbeitung der Anfragen
   nicht blockiert. Benutzen Sie die Funktion
   <span class="function"><a href="function.pg-connection-busy.php" class="function">pg_connection_busy()</a></span>, um zu prüfen, ob die Verbindung
   gerade benutzt wird (z. B. ob gerade eine Abfrage ausgeführt wird). Mit der
   Funktion <span class="function"><a href="function.pg-cancel-query.php" class="function">pg_cancel_query()</a></span> können Abfragen gelöscht
   werden.
  </p>
  <p class="para">
   Obwohl man mehrere Abfragen auf einmal an den Server senden kann, können
   die Abfragen nicht über eine gerade benutzte Verbindung geschickt werden.
   Falls eine Abfrage gesendet wird, während die Verbindung benutzt wird, wird
   abgewartet, bis die letzte Abfrage fertig ist, und alle Ergebnisse werden
   verworfen.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.pg-send-query-parameters">
  <h3 class="title">Parameter-Liste</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">connection</code></dt>
     <dd>
      <p class="para">Eine <span class="classname"><a href="class.pgsql-connection.php" class="classname">PgSql\Connection</a></span>-Instanz.</p>
     </dd>
    
    
     <dt><code class="parameter">query</code></dt>
     <dd>
      <p class="para">
       Das oder die SQL-Anweisung(en), die ausgeführt werden sollen.
      </p>
      <p class="para">
       Daten innerhalb der Abfrage sollten
       <a href="function.pg-escape-string.php" class="link">ordnungsgemäß maskiert</a>
       sein.
      </p>
     </dd>
    
   </dl>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.pg-send-query-returnvalues">
  <h3 class="title">Rückgabewerte</h3>
  <p class="para">
   Gibt bei Erfolg <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> zurück und <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> oder <code class="literal">0</code>, falls
   ein Fehler auftrat.
   Benutzen Sie <span class="function"><a href="function.pg-get-result.php" class="function">pg_get_result()</a></span> um die Abfrageergebnisse
   zu ermitteln.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.pg-send-query-changelog">
  <h3 class="title">Changelog</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Version</th>
      <th>Beschreibung</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
 <td>8.1.0</td>
 <td>
  Der Parameter <code class="parameter">connection</code> erwartet nun eine <span class="classname"><a href="class.pgsql-connection.php" class="classname">PgSql\Connection</a></span>-Instanz;
  vorher wurde eine <a href="language.types.resource.php" class="link">Ressource</a> erwartet.
 </td>
</tr>

    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-function.pg-send-query-examples">
  <h3 class="title">Beispiele</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Beispiel #1 <span class="function"><strong>pg_send_query()</strong></span>-Beispiel</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />  $dbconn </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">"dbname=publisher"</span><span style="color: #007700">) or die(</span><span style="color: #DD0000">"Verbindungsaufbau fehlgeschlagen"</span><span style="color: #007700">);<br /><br />  if (!</span><span style="color: #0000BB">pg_connection_busy</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">)) {<br />      </span><span style="color: #0000BB">pg_send_query</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">, </span><span style="color: #DD0000">"select * from authors; select count(*) from authors;"</span><span style="color: #007700">);<br />  }<br /><br />  </span><span style="color: #0000BB">$res1 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_get_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">);<br />  echo </span><span style="color: #DD0000">"Der erste Aufruf von pg_get_result(): </span><span style="color: #0000BB">$res1</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br />  </span><span style="color: #0000BB">$rows1 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_num_rows</span><span style="color: #007700">(</span><span style="color: #0000BB">$res1</span><span style="color: #007700">);<br />  echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$res1</span><span style="color: #DD0000"> hat </span><span style="color: #0000BB">$rows1</span><span style="color: #DD0000"> Zeilen\n\n"</span><span style="color: #007700">;<br /><br />  </span><span style="color: #0000BB">$res2 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_get_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">);<br />  echo </span><span style="color: #DD0000">"Der zweite Aufruf von pg_get_result(): </span><span style="color: #0000BB">$res2</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br />  </span><span style="color: #0000BB">$rows2 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_num_rows</span><span style="color: #007700">(</span><span style="color: #0000BB">$res2</span><span style="color: #007700">);<br />  echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$res2</span><span style="color: #DD0000"> hat </span><span style="color: #0000BB">$rows2</span><span style="color: #DD0000"> Zeilen\n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">Der erste Aufruf von pg_get_result(): Resource id #3
Resource id #3 hat 3 Zeilen

Der zweite Aufruf von pg_get_result(): Resource id #4
Resource id #4 hat 1 Zeilen</pre>
</div>
    </div>
   </div>
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.pg-send-query-seealso">
  <h3 class="title">Siehe auch</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="function"><a href="function.pg-query.php" class="function" rel="rdfs-seeAlso">pg_query()</a> - F&uuml;hrt eine Abfrage aus</span></li>
     <li><span class="function"><a href="function.pg-cancel-query.php" class="function" rel="rdfs-seeAlso">pg_cancel_query()</a> - L&ouml;scht eine asynchrone Abfrage</span></li>
    <li><span class="function"><a href="function.pg-get-result.php" class="function" rel="rdfs-seeAlso">pg_get_result()</a> - Liefert asynchrone Abfrageergebnisse</span></li>
    <li><span class="function"><a href="function.pg-connection-busy.php" class="function" rel="rdfs-seeAlso">pg_connection_busy()</a> - Gibt den Status der Verbindung zur&uuml;ck (busy/not busy)</span></li>
   </ul>
  </p>
 </div>

</div><?php manual_footer($setup); ?>