pg_send_query

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

pg_send_query Sendet eine asynchrone Abfrage

Beschreibung

pg_send_query(PgSql\Connection $connection, string $query): int|bool

pg_send_query() sendet eine oder mehrere asynchrone Abfragen über die Verbindung connection. Im Unterschied zu pg_query() können hier mehrere Abfragen auf einmal an PostgreSQL gesendet und die Ergebnisse nacheinander mit pg_get_result() geholt werden.

Die Ausführung eines Skripts wird während der Abarbeitung der Anfragen nicht blockiert. Benutzen Sie die Funktion pg_connection_busy() um zu prüfen, ob die Verbindung gerade benutzt wird (z.B. ob gerade eine Abfrage ausgeführt wird). Mit der Funktion pg_cancel_query() können Abfragen gelöscht werden.

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.

Parameter-Liste

connection

Eine PgSql\Connection-Instanz.

query

Das oder die SQL-Anweisung(en), die ausgeführt werden sollen.

Daten innerhalb der Abfrage sollten ordnungsgemäß maskiert sein.

Rückgabewerte

Gibt bei Erfolg true zurück und false oder 0, falls ein Fehler auftrat. Benutzen Sie pg_get_result() um die Abfrageergebnisse zu ermitteln.

Changelog

Version Beschreibung
8.1.0 Der Parameter connection erwartet nun eine PgSql\Connection-Instanz; vorher wurde eine Ressource erwartet.

Beispiele

Beispiel #1 pg_send_query() Beispiel

<?php
  $dbconn 
pg_connect("dbname=publisher") or die("Verbindungsaufbau fehlgeschlagen");

  if (!
pg_connection_busy($dbconn)) {
      
pg_send_query($dbconn"select * from authors; select count(*) from authors;");
  }

  
$res1 pg_get_result($dbconn);
  echo 
"Der erste Aufruf von pg_get_result(): $res1\n";
  
$rows1 pg_num_rows($res1);
  echo 
"$res1 hat $rows1 Zeilen\n\n";
  
  
$res2 pg_get_result($dbconn);
  echo 
"Der zweite Aufruf von pg_get_result(): $res2\n";
  
$rows2 pg_num_rows($res2);
  echo 
"$res2 hat $rows2 Zeilen\n";  
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Kontakt über API anlegen per PHP

Hallo zusammen, ich versuche gerade einen Kontakt über eine API per PHP anzulegen. Aber irgendwie komme ich nicht weiter und kann den Fehler nich ...

Geschrieben von chaos8383 am 29.04.2025 08:49:19
Forum: PHP Developer Forum
Hilfe! Datenübertragung

Hallo Zusammen, Ich möchte vorher sagen das ich mit dem Thema null Erfahrung habe bzw. ein Anfänger bin. Ich habe eine Mysql Datenbank erstell ...

Geschrieben von lolliesglum am 18.04.2025 04:17:20
Forum: SQL / Datenbanken
Affiliate Marketing wer kennt sich aus

Hallo, vielen Dank für den interessanten Beitrag! Was gibt es denn abseits von Affiliate Links sonst noch nur Optionen für Web Marketing auf dem ...

Geschrieben von Neuromancer am 14.04.2025 20:20:44
Forum: Off-Topic Diskussionen
Gibt es natürliche Wege, meine Müdigkeit in den Griff zu bekommen?

Wenn du deinen Körper gezielt unterstützen willst, kann ein hochwertiger Vitamin B Komplex ein sinnvoller Baustein sein. Vitamin B trägt nachwe ...

Geschrieben von Person am 13.04.2025 20:32:36
Forum: SEO - Suchmaschinen Tricks und Tipps