(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDO::setAttribute — Setzt ein Attribut
Legt ein Attribut für eine Datenbankverbindung fest. Einige der allgemein verfügbaren Attribute sind unten aufgeführt; manche Treiber verwenden möglicherweise zusätzliche treiberspezifische Attribute. Es ist zu beachten, dass die treiberspezifischen Attribute nicht mit anderen Treibern verwendet werden dürfen.
PDO::ATTR_CASEErzwingt, dass Spaltennamen eine bestimmte Groß-/Kleinschreibung aufweisen; kann einen der folgenden Werte annehmen:
PDO::CASE_LOWERErzwingt, dass Spaltennamen klein geschrieben werden.
PDO::CASE_NATURALBelässt die Spaltennamen so, wie sie vom Datenbanktreiber zurückgegeben werden.
PDO::CASE_UPPERErzwingt, dass Spaltennamen groß geschrieben werden.
PDO::ATTR_ERRMODEModus der PDO-Fehlermeldung; kann einen der folgenden Werte annehmen:
PDO::ERRMODE_SILENTEs werden nur Fehlercodes gesetzt.
PDO::ERRMODE_WARNING
Gibt einen Fehler der Stufe E_WARNING aus.
PDO::ERRMODE_EXCEPTIONLöst PDOExceptions aus.
PDO::ATTR_ORACLE_NULLSHinweis:
Dieses Attribut ist für alle Treiber verfügbar, nicht nur für Oracle.
Legt fest, ob und wie null und leere Strings umgewandelt werden
sollen; kann einen der folgenden Werte annehmen:
PDO::NULL_NATURALEs findet keine Umwandlung statt.
PDO::NULL_EMPTY_STRING
Leere Zeichenketten werden in null umgewandelt.
PDO::NULL_TO_STRING
null wird in eine leere Zeichenkette umgewandelt.
PDO::ATTR_STRINGIFY_FETCHES
Legt fest, ob abgerufene numerische Werte in Zeichenketten umgewandelt
werden sollen; akzeptiert einen Wert vom Typ bool: true
zum Aktivieren und false zum Deaktivieren (Voreinstellung).
null-Werte bleiben unverändert, es sei denn,
PDO::ATTR_ORACLE_NULLS wird auf
PDO::NULL_TO_STRING gesetzt.
PDO::ATTR_STATEMENT_CLASS
Legt die vom Benutzer bereitgestellte Anweisungsklasse fest, die von
PDOStatement abgeleitet ist; muss das Format
array(string classname, array(mixed constructor_args))
haben.
Kann nicht mit persistenten PDO-Instanzen verwendet werden.
PDO::ATTR_TIMEOUTLegt das Zeitlimit fest (in Sekunden); akzeptiert einen Wert vom Typ int.
Hinweis:
Diese Option wird nicht von allen Treibern unterstützt und ihre Bedeutung kann sich je nach Treiber unterscheiden. So wartet SQLite beispielsweise bis zu diesem Zeitwert, bevor es aufgibt, eine beschreibbare Sperre zu erhalten, aber andere Treiber können dies als Zeitlimit für den Verbindungsaufbau oder den Lesevorgang interpretieren.
PDO::ATTR_AUTOCOMMITHinweis:
Nur für die OCI-, Firebird- und MySQL-Treiber verfügbar.
Legt fest, ob jede einzelne Anweisung automatisch bestätigt werden
soll; akzeptiert einen Wert vom Typ bool: true zum
Aktivieren und false zum Deaktivieren. Voreinstellung: true.
PDO::ATTR_EMULATE_PREPARESHinweis:
Nur für die OCI-, Firebird- und MySQL-Treiber verfügbar.
Aktiviert oder deaktiviert die Emulation vorbereiteter Anweisungen.
Einige Treiber unterstützen vorbereitete Anweisungen nicht nativ oder
nur eingeschränkt. Wenn es auf true gesetzt ist, werden vorbereitete
Anweisungen immer emuliert, andernfalls versucht PDO, nativ
vorbereitete Anweisungen zu verwenden. Falls der Treiber die aktuelle
Abfrage nicht erfolgreich vorbereiten kann, greift PDO immer darauf
zurück, die vorbereitete Anweisung zu emulieren.
PDO::MYSQL_ATTR_USE_BUFFERED_QUERYHinweis:
Nur für den MySQL-Treiber verfügbar.
Legt fest, ob gepufferte Abfragen verwendet werden sollen; akzeptiert
einen Wert vom Typ bool: true zum Aktivieren und false
zum Deaktivieren. Voreinstellung: true.
PDO::ATTR_DEFAULT_FETCH_MODELegt den standardmäßigen Abrufmodus fest. Eine Beschreibung der Modi und ihrer Verwendung ist in der Dokumentation zu PDOStatement::fetch() zu finden.
attributeDas Attribut, das geändert werden soll.
value
Der Wert, auf den attribute gesetzt wird; je
nach Attribut kann ein bestimmter Typ erforderlich sein.