PDOStatement::setAttribute

Descarregar o driver PHP

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" ) );  
?>