odbc_execute

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_executeFührt einen vorbereiteten SQL-Befehl aus

Beschreibung

odbc_execute(resource $statement, array $params = []): bool

Führt eine mit odbc_prepare() vorbereitete Anweisung aus.

Parameter-Liste

statement

Die Ergebniskennung resource von odbc_prepare().

params

Parameter in params werden für Platzhalter in der vorbereiteten Anweisung in der Reihenfolge ihres Vorkommens eingesetzt. Elemente dieses Array werden zu Zeichenketten konvertiert, wenn diese Funktion aufgerufen wird.

Jegliche Parameter in params, die mit einfachen Anführungszeichen beginnen und enden, werden als Name einer Datei interpretiert, die gelesen und als Daten für den entsprechenden Platzhalter an den Server gesendet werden.

Soll eine Zeichenkette, die tatsächlich mit einfachen Anführungszeichen beginnt und endet übergeben werden, muss ein Leerzeichen oder ein anderes Zeichen, das kein einfaches Anführungszeichen ist, am Anfang oder Ende der Zeichenkette eingefügt werden, was verhindert, dass der Parameter als Dateiname interpretiert wird. Ist dies keine Option, dann muss ein anderer Mechanismus verwendet werden, um die Zeichenkette zu übergeben, wie z. B. die Abfrage direkt per odbc_exec() auszuführen.

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Beispiele

Beispiel #1 Beispiel für odbc_execute() und odbc_prepare()

Im folgenden Code ist $success nur dann true, wenn alle drei Parameter für myproc Eingabeparameter (IN) sind:

<?php
$a
= 1;
$b = 2;
$c = 3;
$stmt = odbc_prepare($conn, 'CALL myproc(?,?,?)');
$success = odbc_execute($stmt, array($a, $b, $c));
?>

Wenn eine gespeicherte Prozedur aufgerufen werden soll, die Ein-Ausgabe- (INOUT) oder Ausgabeparameter (OUT) verwendet, wird als Workaround empfohlen, eine native Extension für die jeweilige Datenbank zu verwenden (beispielsweise oci8 für Oracle).

Siehe auch