Forum und email

odbc_setoption

(PHP 4, PHP 5)

odbc_setoption — Verändert die ODBC-Einstellungen

Beschreibung

int odbc_setoption ( int $id , int $function , int $option , int $param )

Diese Funktion erlaubt das Einstellen der ODBC-Optionen für eine einzelne Verbindung. Sie soll beim Auffinden und Beheben von Problemen mit ODBC-Treibern helfen. Es empfiehlt sich, diese Funktionen nur zu nutzen, wenn man einige Erfahrung mit ODBC-Programmierung gesammelt hat und die Wirkungen der einzelnen Parameter kennt. Um mit Ihnen zu arbeiten, benötigen Sie eine Referenz der aktuellen Treiberversion des eingesetzten ODBC-Treibers, denn die Optionen sind von Treiber zu Treiber und von Version zu Version unterschiedlich.

Weil die Effekte je nach ODBC-Treiber unterschiedlich sind, sollte Skripte mit diesen Funktionen nicht veröffentlich werden. Einige Optionen stehen nicht zur Verfügung, weil sie vor dem Aufbau einer ODBC-Verbindung eingestellt sein müssen. Wie auch immer, in einigen Fällen hilft diese Funktion zu vermeiden, dass man von seinem Vorgesetzten gezwungen wird, ein kommerzielles Programm einzusetzen - und darauf kommt es doch an ;-) .

Id ist die Verbindungs oder Ergebniskennung, deren Optionen geändert werden sollen. Bei SQLSetConnectOption() ist es eine Verbindungskennung, bei SQLSetStmtOption() eine Ergebniskennung.

function ist die ODBC-Funktion, die genutzt werden soll. Die Werte sind 1 für SQLSetConnectOption() und 2 für SQLSetStntOption().

Der Parameter option ist die Option, die gesetzt werden soll.

Der Parameter param ist der Wert für die gegebene option .

Example#1 odbc.setoption Beispiele

// 1. Option 102 von SQLSetConnectOption() ist SQL_AUTOCOMMIT.
//    Wert 1 für SQL_AUTOCOMMIT entspricht SQL_AUTOCOMMIT_ON.
//    Dieses Beispiel hat denselben Effekt wie
//    odbc_autocommit($conn, true);

odbc_setoption ($conn, 1, 102, 1);

// 2. Option 0 von SQLSetStmtOption() ist SQL_QUERY_TIMEOUT.
//    Dieses Beispiel setzt den Timeout auf 30 Sekunden.

$result = odbc_prepare ($conn, $sql);
odbc_setoption ($result, 2, 0, 30);
odbc_execute ($result);