odbc_execute

(PHP 4, PHP 5, PHP 7)

odbc_executeFührt einen vorbereiteten SQL-Befehl aus

Beschreibung

odbc_execute ( resource $result_id [, array $parameters_array ] ) : bool

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

Parameter-Liste

result_id

Die Ergebniskennung resource von odbc_prepare().

parameters_array

Parameter in parameter_array 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 parameter_array, 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. Im Fehlerfall wird FALSE zurückgegeben.

Beispiele

Beispiel #1 odbc_execute() und odbc_prepare() example

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 mssql für MS SQL Server oder oci8 für Oracle).

Changelog

Version Beschreibung
4.2.0 Das Lesen von in parameters_array angegebene Dateien unterliegt nun Safe Mode und open-basedir Beschränkungen.

Siehe auch