Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Sätter ett attributvärde, antingen ett fördefinierat PDO-attribut eller ett eget drivrutinsattribut.
Syntax
bool PDOStatement::setAttribute ($attribute, $value );
Parameters
$ attribut: Ett heltal, en av PDO::ATTR_* eller PDO::SQLSRV_ATTR_*-konstanterna. Se avsnittet Anmärkningar för listan över tillgängliga attribut.
$ värde: Det (blandade) värdet som ska sättas för det specificerade $attributet.
Returvärde
SANT vid framgång, FALSKT annars.
Remarks
Följande tabell innehåller en lista över tillgängliga attribut:
| Attribute | Values | Beskrivning |
|---|---|---|
| PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | 1 till PHP-minnesgränsen. | Konfigurerar storleken på bufferten som håller resultatuppsättningen för en klient-sida markör. Standardvärdet är 10 240 KB (10 MB). För mer information om klientsidans markörer, se Markörtyper (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_DATA_CLASSIFICATION | sant eller falskt | Specificerar om dataklassificeringsmetadata ska hämtas när PDOStatement::getColumnMeta. Standardvärdet är falskt. |
| PDO::SQLSRV_ATTR_DECIMAL_PLACES | Heltal mellan 0 och 4 (inklusive) | Specificerar antalet decimaler vid formatering av hämtade penningvärden. Eventuella negativa heltal eller värden över 4 ignoreras. Detta alternativ fungerar bara när PDO::SQLSRV_ATTR_FORMAT_DECIMALS är sant. Detta alternativ kan också ställas in på anslutningsnivå. Om så är fallet, så åsidosätter detta alternativ anslutningsnivåalternativet. För mer information, se Formatering av decimalsträngar och penningvärden (PDO_SQLSRV drivrutin). |
| PDO::SQLSRV_ATTR_ENCODING | Integer PDO::SQLSRV_ENCODING_UTF8 (Standard) PDO::SQLSRV_ENCODING_SYSTEM PDO::SQLSRV_ENCODING_BINARY |
Sätter teckenuppsättningskodningen att användas av drivrutinen för att kommunicera med servern. |
| PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE | sant eller falskt | Specificerar om datum- och tidstyper ska hämtas som PHP DateTime-objekt . Om de lämnas falska är standardbeteendet att returnera dem som strängar. Detta alternativ kan också ställas in på anslutningsnivå. Om så är fallet, så åsidosätter detta alternativ anslutningsnivåalternativet. Mer information finns i How to: Retrieve Date and Time Types as PHP DateTime Objects Using the PDO_SQLSRV Driver (Hämta datum- och tidstyper som PHP DateTime-objekt med hjälp av drivrutinen för PDO_SQLSRV). |
| PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | sant eller falskt | Hanterar numeriska hämtningar från kolumner med numeriska SQL-typer (bit, heltal, smallint, tinyint, flyttal eller reell). När anslutningsvalflaggan ATTR_STRINGIFY_FETCHES är på, är returvärdet en sträng även när SQLSRV_ATTR_FETCHES_NUMERIC_TYPE är på. När den returnerade PDO-typen i bind-kolumnen är PDO_PARAM_INT, är returvärdet från en heltalskolumn en int även om SQLSRV_ATTR_FETCHES_NUMERIC_TYPE är fel. |
| PDO::SQLSRV_ATTR_FORMAT_DECIMALS | sant eller falskt | Specificerar om ledande nollor ska läggas till decimalsträngar när det är lämpligt. Om det är inställt aktiverar detta alternativ PDO::SQLSRV_ATTR_DECIMAL_PLACES för att formatera penningtyper. Om det lämnas falskt används standardbeteendet att returnera exakt precision och utelämna inledande nolla för värden som är mindre än 1. Detta alternativ kan också ställas in på anslutningsnivå. Om så är fallet, så åsidosätter detta alternativ anslutningsnivåalternativet. För mer information, se Formatering av decimalsträngar och penningvärden (PDO_SQLSRV drivrutin). |
| PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Integer | Sätter frågetimeout på sekunder. Som standard väntar drivrutinen obestämt på resultat. Negativa tal tillåts inte. 0 betyder ingen 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" ) );
?>