Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ustawia zdefiniowany atrybut PDO lub niestandardowy atrybut sterownika.
Syntax
bool PDO::setAttribute ( $attribute, $value );
Parametry
$attribute: Atrybut do zestawu. Zobacz sekcję Uwagi dla listy wspieranych atrybutów.
$value: Wartość (typ mieszany).
Wartość zwracana
Wyniki są prawdziwe przy sukcesie, w przeciwnym razie fałszywe.
Remarks
| Attribute | Przetworzone przez | Obsługiwane wartości | Description |
|---|---|---|---|
| PDO::ATTR_CASE | PDO | PDO::CASE_LOWER PDO::CASE_NATURAL PDO::CASE_UPPER |
Określa przypadek nazw kolumn. PDO::CASE_LOWER powoduje nazwy kolumn z małymi literami. PDO::CASE_NATURAL (domyślnie) wyświetla nazwy kolumn zwrócone przez bazę danych. PDO::CASE_UPPER powoduje, że nazwy kolumn są wielkimi literami. Ten atrybut można ustawić za pomocą PDO::setAttribute. |
| PDO::ATTR_DEFAULT_FETCH_MODE | PDO | Zobacz dokumentację PDO. | Zobacz dokumentację PDO. |
| PDO::ATTR_DEFAULT_STR_PARAM | PDO | PDO::P ARAM_STR_CHAR PDO::P ARAM_STR_NATL |
Więcej informacji można znaleźć w przykładach w PDO::quote. |
| PDO::ATTR_ERRMODE | PDO | PDO::ERRMODE_SILENT PDO::ERRMODE_WARNING PDO::ERRMODE_EXCEPTION |
Określa, jak sterownik zgłasza awarie. PDO::ERRMODE_SILENT (domyślnie) ustala kody błędów i informacje. PDO::ERRMODE_WARNING podnosi E_WARNING. PDO::ERRMODE_EXCEPTION powoduje wprowadzenie wyjątku. Ten atrybut można ustawić za pomocą PDO::setAttribute. |
| PDO::ATTR_ORACLE_NULLS | PDO | Zobacz dokumentację PDO. | Określa, jak należy zwracać null. PDO::NULL_NATURAL nie robi konwersji. PDO::NULL_EMPTY_STRING konwertuje pusty ciąg na null. PDO::NULL_TO_STRING konwertuje null na pusty ciąg. |
| PDO::ATTR_STATEMENT_CLASS | PDO | Zobacz dokumentację PDO. | Ustala klasę poleceń dostarczoną przez użytkownika pochodzącą z PDOStatement. Wymaga array(string classname, array(mixed constructor_args)).Więcej informacji można znaleźć w dokumentacji PDO. |
| PDO::ATTR_STRINGIFY_FETCHES | PDO | prawda lub fałsz | Przekształca wartości numeryczne w ciągi tekstów podczas pobierania danych. |
| PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | 1 do limitu pamięci PHP. | Ustala rozmiar bufora przetrzymującego zbiór wyników przy użyciu kursora po stronie klienta. Domyślna wartość to 10240 KB, jeśli nie jest określona w pliku php.ini. Liczby zerowe i ujemne nie są dozwolone. Więcej informacji o zapytaniach tworzących kursor po stronie klienta można znaleźć w sekcji Typy kursorów (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_DECIMAL_PLACES | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | Liczba całkowita z zakresu od 0 do 4 (włącznie) | Określa liczbę miejsc po przecinku przy formatowaniu wartości pobieranych pieniędzy. Każda ujemna liczba całkowita lub wartość większa niż 4 zostaną zignorowane. Ta opcja działa tylko wtedy, gdy PDO::SQLSRV_ATTR_FORMAT_DECIMALS jest prawdziwe. Ta opcja może być również ustawiona na poziomie wypowiedzi. Jeśli tak, to opcja poziomu instrukcji nadpisuje tę opcję. Więcej informacji można znaleźć w artykule Formatowanie łańcuchów dziesiętnych i wartości pieniężnych (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_DIRECT_QUERY | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | prawda lub fałsz | Określa bezpośrednie lub przygotowane wykonanie zapytań. Więcej informacji można znaleźć w artykule Wykonanie bezpośredniego oświadczenia oraz Wykonanie przygotowanego wypowiedzenia w sterowniku PDO_SQLSRV. |
| PDO::SQLSRV_ATTR_ENCODING | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | PDO::SQLSRV_ENCODING_UTF8 PDO::SQLSRV_ENCODING_SYSTEM. |
Ustawia kodowanie zestawu znaków używanego przez sterownik do komunikacji z serwerem. PDO::SQLSRV_ENCODING_BINARY nie jest obsługiwany. Domyślna wersja to PDO::SQLSRV_ENCODING_UTF8. |
| PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | prawda lub fałsz | Określa, czy należy pobierać typy daty i godziny jako obiekty PHP DateTime . Jeśli pozostawi fałszywe, domyślne zachowanie polega na zwracaniu ich jako ciągów znaków. Ta opcja może być również ustawiona na poziomie wypowiedzi. Jeśli tak, to opcja poziomu instrukcji nadpisuje tę opcję. Aby uzyskać więcej informacji, zobacz How to: Retrieve Date and Time Types as PHP DateTime Objects Using the PDO_SQLSRV Driver (Jak pobrać typy dat i godzin jako obiekty typu data/godzina w języku PHP przy użyciu sterownika PDO_SQLSRV). |
| PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | prawda lub fałsz | Obsługuje numeryczne pobieranie z kolumn o numerycznych typach SQL (bit, liczba całkowita, smallint, tinyint, float lub real). Gdy flaga opcji połączenia ATTR_STRINGIFY_FETCHES jest włączona, wartość zwrotu jest ciągiem tekstów nawet wtedy, gdy SQLSRV_ATTR_FETCHES_NUMERIC_TYPE jest włączone. Gdy zwrócony typ PDO w kolumnie bind jest PDO_PARAM_INT, wartość zwrotna z kolumny całkowitej jest int, nawet jeśli SQLSRV_ATTR_FETCHES_NUMERIC_TYPE jest nieprawidłowa. |
| PDO::SQLSRV_ATTR_FORMAT_DECIMALS | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | prawda lub fałsz | Określa, czy należy dodawać zera wiodące do ciągów dziesiętnych, gdy jest to stosowne. Jeśli ta opcja jest ustawiona, umożliwia to opcję PDO::SQLSRV_ATTR_DECIMAL_PLACES do formatowania typów pieniędzy. Jeśli wartość false pozostanie, używane jest domyślne zachowanie zwracania dokładnych wartości i pomijania zer wiodących dla wartości mniejszych niż 1. Ta opcja może być również ustawiona na poziomie wypowiedzi. Jeśli tak, to opcja poziomu instrukcji nadpisuje tę opcję. Więcej informacji można znaleźć w artykule Formatowanie łańcuchów dziesiętnych i wartości pieniężnych (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Sterowniki firmy Microsoft dla języka PHP dla programu SQL Server | liczba całkowita | Ustawia czas zapytania na sekundy. Domyślnie to 0, co oznacza, że kierowca będzie czekał w nieskończoność na wyniki. Liczby ujemne są niedozwolone. |
PDO przetwarza niektóre z wcześniej zdefiniowanych atrybutów i wymaga od sterownika przetwarzania innych. Wszystkie niestandardowe atrybuty i opcje połączenia są przetwarzane przez sterownik. Nieobsługiwany atrybut, opcja połączenia lub wartość niewspierana jest zgłaszana zgodnie z ustawieniami PDO::ATTR_ERRMODE.
Wsparcie dla PDO zostało dodane w wersji 2.0 sterowników Microsoft dla PHP dla SQL Server.
Example
Ten przykład pokazuje, jak ustawić atrybut PDO::ATTR_ERRMODE.
<?php
$database = "AdventureWorks";
$conn = new PDO( "sqlsrv:server=(local) ; Database = $database", "", "");
$attributes1 = array( "ERRMODE" );
foreach ( $attributes1 as $val ) {
echo "PDO::ATTR_$val: ";
var_dump ($conn->getAttribute( constant( "PDO::ATTR_$val" ) ));
}
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$attributes1 = array( "ERRMODE" );
foreach ( $attributes1 as $val ) {
echo "PDO::ATTR_$val: ";
var_dump ($conn->getAttribute( constant( "PDO::ATTR_$val" ) ));
}
?>