Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nastavuje hodnotu atributu, buď předdefinovaný atribut PDO, nebo vlastní atribut ovladače.
Syntax
bool PDOStatement::setAttribute ($attribute, $value );
Parametry
$ atribut: Celé číslo, jedna z konstant PDO::ATTR_* nebo PDO::SQLSRV_ATTR_*. Viz sekce Poznámky pro seznam dostupných atributů.
$ hodnota: (smíšená) hodnota, která má být nastavena pro specifikovaný atribut $.
Návratová hodnota
PRAVDA u úspěchu, jinak NEPRAVDA.
Remarks
Následující tabulka obsahuje seznam dostupných atributů:
| Vlastnost | Values | Description |
|---|---|---|
| PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | 1 na limit paměti PHP. | Konfiguruje velikost bufferu, který uchovává výslednou množinu pro kurzor na straně klienta. Výchozí hodnota je 10 240 KB (10 MB). Pro více informací o kurzorech na straně klienta viz Typy kurzorů (PDO_SQLSRV ovladač). |
| PDO::SQLSRV_ATTR_DATA_CLASSIFICATION | pravda nebo lež | Specifikuje, zda má při volání PDOStatement::getColumnMeta získat metadata klasifikace dat. Výchozí hodnota je false. |
| PDO::SQLSRV_ATTR_DECIMAL_PLACES | Celé číslo mezi 0 a 4 (včetně) | Specifikuje počet desetinných míst při formátování načítaných peněžních hodnot. Jakékoli záporné celé číslo nebo hodnota větší než 4 budou ignorovány. Tato možnost funguje pouze tehdy, když platí PDO::SQLSRV_ATTR_FORMAT_DECIMALS. Tuto možnost lze nastavit i na úrovni připojení. Pokud ano, tato možnost přepisuje možnost úrovně připojení. Pro více informací viz Formátování desetinných řetězců a peněžních hodnot (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_ENCODING | Celé číslo PDO::SQLSRV_ENCODING_UTF8 (výchozí) PDO::SQLSRV_ENCODING_SYSTEM PDO::SQLSRV_ENCODING_BINARY |
Nastavuje kódování znakové sady, které ovladač používá ke komunikaci se serverem. |
| PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE | pravda nebo lež | Specifikuje, zda má být načtena jako PHP objekty DateTime . Pokud zůstane nepravdivé, výchozím chováním je vrácení jako řetězce. Tuto možnost lze nastavit i na úrovni připojení. Pokud ano, tato možnost přepisuje možnost úrovně připojení. Další informace naleznete v tématu Postupy: Načtení typů data a času jako objekty PHP DateTime pomocí ovladače PDO_SQLSRV. |
| PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | pravda nebo lež | Zpracovává numerické načítání ze sloupců s numerickými SQL typy (bit, celé, smallint, tinyint, float nebo real). Když je zapnutý příznak možnosti připojení ATTR_STRINGIFY_FETCHES, vrácená hodnota je řetězec i když je SQLSRV_ATTR_FETCHES_NUMERIC_TYPE zapnutý. Když je vrácený typ PDO ve sloupci bind PDO_PARAM_INT, vrácená hodnota z celočíselného sloupce je int, i když je SQLSRV_ATTR_FETCHES_NUMERIC_TYPE nesprávná. |
| PDO::SQLSRV_ATTR_FORMAT_DECIMALS | pravda nebo lež | Specifikuje, zda je vhodné, přidat vedoucí nuly do desetinných řetězců. Pokud je nastavena, tato možnost umožňuje PDO::SQLSRV_ATTR_DECIMAL_PLACES pro formátování typů peněz. Pokud necháte hodnotu false, použije se výchozí chování vrácení přesné přesnosti a vynechání počátečních nul pro hodnoty menší než 1. Tuto možnost lze nastavit i na úrovni připojení. Pokud ano, tato možnost přepisuje možnost úrovně připojení. Pro více informací viz Formátování desetinných řetězců a peněžních hodnot (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Celé číslo | Nastaví časový limit dotazu na sekundy. Ve výchozím nastavení bude řidič čekat na výsledky donekonečna. Záporná čísla nejsou povolená. 0 znamená žádný timeout. |
Example
<?php
$database = "AdventureWorks";
$server = "(local)";
$conn = new PDO( "sqlsrv:server=$server ; Database = $database", "", "", array('MultipleActiveResultSets'=>false ) );
$stmt = $conn->prepare('SELECT * FROM Person.ContactType');
echo $stmt->getAttribute( constant( "PDO::ATTR_CURSOR" ) );
echo "\n";
$stmt->setAttribute(PDO::SQLSRV_ATTR_QUERY_TIMEOUT, 2);
echo $stmt->getAttribute( constant( "PDO::SQLSRV_ATTR_QUERY_TIMEOUT" ) );
?>