PHP Doku:: Fordert den Datenankserver auf, eine vorbereitete Anfrage mit den angegebenen Parametern auszuführen und wartet auf das Ergebnis - function.pg-execute.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzDatenbankerweiterungenAnbieterspezifische DatenbankerweiterungenPostgreSQLPostgreSQL-Funktionenpg_execute

Ein Service von Reinhard Neidl - Webprogrammierung.

PostgreSQL-Funktionen

<<pg_escape_string

pg_fetch_all_columns>>

pg_execute

(PHP 5 >= 5.1.0)

pg_executeFordert den Datenankserver auf, eine vorbereitete Anfrage mit den angegebenen Parametern auszuführen und wartet auf das Ergebnis

Beschreibung

resource pg_execute ([ resource $connection ], string $stmtname , array $params )

Fordert den Datenankserver auf, eine vorbereitete Anfrage mit den angegebenen Parametern auszuführen und wartet auf das Ergebnis.

pg_execute() ist ähnlich wie pg_query_params(), mit dem Unterschied, dass das auszuführende Kommando zuvor als vorbereitete Abfrage definiert wurde und kein SQL-String ist. Damit werden Abfragen, die wiederholt gebraucht werden, nur ein einziges Mal geparst und geplant und nicht jedesmal, wenn sie ausgeführt werden. Das Kommando muss zuvor in der aktuellen Datenbanksitzung vorbereitet worden sein. pg_execute() wird von PostgreSQL ab der Version 7.4 unterstützt und wird in allen früheren Versionen fehlschlagen.

Die Parameter sind identisch zu denen in pg_query_params(), außer dass der Name eines vorbereiteten Kommandos anstatt einer SQL-Abfrage übergeben wird.

Parameter-Liste

connection

PostgreSQL Verbindungskennung. Wenn connection fehlt, wird die Standardverbindung angenommen. Dies ist die Verbindung, die zuletzt mit den Funktionen pg_connect() oder pg_pconnect() geöffnet wurde.

stmtname

Der Name der vorbereiteten Abfrage, die ausgeführt werden soll. Falls "" angegeben wurde, wird die unbenannte Abfrage ausgeführt. Dieser Name muss zuvor mit pg_prepare(), pg_send_prepare() oder dem SQL-Kommando PREPARE vorbereitet worden sein.

params

Ein Array, das die Parameter enthält, mit denen die Platzhalter $1, $2 usw. im originalen Abfragestring ersetzt werden. Die Anzahl der Arrayelemente muss mit der Anzahl der Platzhalter übereinstimmen.

Warnung

Beim Aufruf dieser Funktion werden die Elemente in Strings konvertiert.

Rückgabewerte

Bei Erfolg wird eine Ergebniskennung zurückgegeben und bei einem Fehler FALSE.

Beispiele

Beispiel #1 pg_execute() benutzen:

<?php
// Zu der Datenbank "mary" verbinden
$dbconn pg_connect("dbname=mary");

// Eine Abfrage zur Ausführung vorbereiten
$result pg_prepare($dbconn"my_query"'SELECT * FROM shops WHERE name = $1');

// Die vorbereitete Abfrage ausführen. Es ist nicht notwendig,
// den String "Joe's Widgets" zu maskieren
$result pg_execute($dbconn"my_query", array("Joe's Widgets"));

// Dieselbe vorbereitete Abfrage nochmal ausführen,
// diesmal mit einem anderen Parameter
$result pg_execute($dbconn"my_query", array("Clothes Clothes Clothes"));

?>

Siehe auch

  • pg_prepare() - Sendet eine Aufforderung an den Server, eine vorbereitete Anfrage mit den übergebenen Parametern zu erzeugen und wartet auf ihre Beendigung.
  • pg_send_prepare() - Sendet eine Aufforderung an den Server, eine vorbereitete Abfrage mit den übergebenen Parametern zu erzeugen, ohne auf ihre Beendigung zu warten.
  • pg_query_params() - Sendet ein Kommando zum Server und wartet seine Ausführung ab. Getrennt vom SQL-Kommando können dabei Parameter übergeben werden.


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
nmmm at nmmm dot nu
5.05.2006 9:11
I am not 100% sure in this, but pg_exec() could return 0 as Connection ID.

because of that i change some of my code like this:

$dbres = pg_exec($SQL);

if ($dbres === false){
        echo "DB is down";
        exit;
}else{
        //do something
}



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)