Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Define um valor de atributo, seja um atributo PDO pré-definido ou um atributo de driver personalizado.
Syntax
bool PDOStatement::setAttribute ($attribute, $value );
Parâmetros
$ atributo: Um inteiro, uma das constantes PDO::ATTR_* ou PDO::SQLSRV_ATTR_*. Consulte a secção de Observações para a lista de atributos disponíveis.
$ valor: O valor (misto) a definir para o $atributo especificado.
Valor de retorno
VERDADEIRO no sucesso, FALSO caso contrário.
Observações
A tabela seguinte contém a lista de atributos disponíveis:
| Attribute | Values | Descrição |
|---|---|---|
| PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | 1 para o limite de memória PHP. | Configura o tamanho do buffer que contém o conjunto de resultados para um cursor do lado do cliente. O padrão é 10.240 KB (10 MB). Para mais informações sobre cursores do lado do cliente, consulte Tipos de Cursor (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_DATA_CLASSIFICATION | verdadeiro ou falso | Especifica se deve recuperar metadados de classificação de dados ao chamar PDOStatement::getColumnMeta. O valor predefinido é falso. |
| PDO::SQLSRV_ATTR_DECIMAL_PLACES | Inteiro entre 0 e 4 (inclusive) | Especifica o número de casas decimais ao formatar valores de moeda buscados. Qualquer valor negativo inteiro ou maior que 4 será ignorado. Esta opção só funciona quando PDO::SQLSRV_ATTR_FORMAT_DECIMALS é verdadeira. Esta opção pode também ser definida ao nível da ligação. Se sim, então esta opção sobrepõe-se à opção de nível de ligação. Para mais informações, consulte Formatação de Cadeias Decimais e Valores de Dinheiro (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_ENCODING | Integer PDO::SQLSRV_ENCODING_UTF8 (Padrão) PDO::SQLSRV_ENCODING_SYSTEM PDO::SQLSRV_ENCODING_BINARY |
Define a codificação do conjunto de caracteres para ser usada pelo driver para comunicar com o servidor. |
| PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE | verdadeiro ou falso | Especifica se deve recuperar os tipos de data e hora como objetos PHP DateTime . Se forem deixados falsos, o comportamento padrão é devolvê-los como strings. Esta opção pode também ser definida ao nível da ligação. Se sim, então esta opção sobrepõe-se à opção de nível de ligação. Para mais informações, veja Como: Recuperar Tipos de Data e Hora como Objetos PHP DateTime usando o PDO_SQLSRV Driver. |
| PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | verdadeiro ou falso | Trata de buscas numéricas a partir de colunas com tipos numéricos SQL (bit, inteiro, smallint, tinyint, float ou real). Quando a flag de opção de ligação ATTR_STRINGIFY_FETCHES está ativada, o valor de retorno é uma string mesmo quando SQLSRV_ATTR_FETCHES_NUMERIC_TYPE está ativada. Quando o tipo PDO devolvido na coluna de ligação está PDO_PARAM_INT, o valor de retorno de uma coluna inteira é um int, mesmo que SQLSRV_ATTR_FETCHES_NUMERIC_TYPE esteja desligado. |
| PDO::SQLSRV_ATTR_FORMAT_DECIMALS | verdadeiro ou falso | Especifica se deve adicionar zeros à esquerda às cadeias decimais quando apropriado. Se ativada, esta opção ativa a opção PDO::SQLSRV_ATTR_DECIMAL_PLACES para formatar os tipos de dinheiro. Se for deixado falso, utiliza-se o comportamento padrão de devolver precisão exata e omitir os zeros iniciais para valores inferiores a 1. Esta opção pode também ser definida ao nível da ligação. Se sim, então esta opção sobrepõe-se à opção de nível de ligação. Para mais informações, consulte Formatação de Cadeias Decimais e Valores de Dinheiro (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Integer | Define o tempo limite da consulta em segundos. Por defeito, o condutor espera indefinidamente pelos resultados. Não são permitidos números negativos. 0 significa sem tempo morto. |
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" ) );
?>