PDO::setAttribute

PHP 드라이버 다운로드

미리 정의된 PDO 특성 또는 사용자 지정 드라이버 특성을 설정합니다.

구문

bool PDO::setAttribute ( $attribute, $value );  

매개 변수

$attribute: 설정할 특성입니다. 지원되는 특성의 목록은 설명 섹션을 참조하세요.

$value: 값(혼합 형식)입니다.

반환 값

성공하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

설명

attribute 처리 기준 지원되는 값 설명
PDO::ATTR_CASE PDO PDO::CASE_LOWER

PDO::CASE_NATURAL

PDO::CASE_UPPER
열 이름의 대/소문자를 지정합니다.

PDO::CASE_LOWER 소문자 열 이름을 발생합니다.

PDO::CASE_NATURAL(기본값)은 데이터베이스에서 반환된 열 이름을 표시합니다.

PDO::CASE_UPPER 열 이름을 대문자로 지정합니다.

이 특성은 PDO::setAttribute를 사용하여 설정할 수 있습니다.
PDO::ATTR_DEFAULT_FETCH_MODE PDO PDO 설명서를 참조하세요. PDO 설명서를 참조하세요.
PDO::ATTR_DEFAULT_STR_PARAM PDO PDO::P ARAM_STR_CHAR

PDO::P ARAM_STR_NATL
자세한 내용은 PDO::quote의 예제를 참조하세요.
PDO::ATTR_ERRMODE PDO PDO::ERRMODE_SILENT

PDO::ERRMODE_WARNING

PDO::ERRMODE_EXCEPTION
드라이버에서 오류를 보고하는 방법을 지정합니다.

PDO::ERRMODE_SILENT(기본값)는 오류 코드 및 정보를 설정합니다.

PDO::ERRMODE_WARNING E_WARNING 발생합니다.

PDO::ERRMODE_EXCEPTION 예외가 throw됩니다.

이 특성은 PDO::setAttribute를 사용하여 설정할 수 있습니다.
PDO::ATTR_ORACLE_NULLS PDO PDO 설명서를 참조하세요. null을 반환하는 방법을 지정합니다.

PDO::NULL_NATURAL 변환하지 않습니다.

PDO::NULL_EMPTY_STRING은 빈 문자열을 null로 변환합니다.

PDO::NULL_TO_STRING null을 빈 문자열로 변환합니다.
PDO::ATTR_STATEMENT_CLASS PDO PDO 설명서를 참조하세요. PDOStatement에서 파생된 사용자 제공 문 클래스를 설정합니다.

array(string classname, array(mixed constructor_args))가 필요합니다.

자세한 내용은 PDO 설명서를 참조하세요.
PDO::ATTR_STRINGIFY_FETCHES PDO true 또는 false 데이터를 검색할 때 숫자 값을 문자열로 변환합니다.
PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) PHP 메모리 제한에 1. 클라이언트 쪽 커서를 사용할 때 결과 집합을 보유하는 버퍼의 크기를 설정합니다.

php.ini 파일에 지정되지 않은 경우 기본값은 10240KB입니다.

0과 음수는 허용되지 않습니다.

클라이언트 쪽 커서를 만드는 쿼리에 대한 자세한 내용은 커서 유형(PDO_SQLSRV 드라이버)을 참조하세요.
PDO::SQLSRV_ATTR_DECIMAL_PLACES Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) 0과 4(포함) 사이의 정수 인출된 금액 값의 서식을 지정할 때 소수 자릿수를 지정합니다.

음수 정수 또는 4보다 큰 값은 무시됩니다.

이 옵션은 PDO::SQLSRV_ATTR_FORMAT_DECIMALS true인 경우에만 작동합니다.

이 옵션은 문 수준에서도 설정할 수 있습니다. 문 수준에서 설정하면, 문 수준 옵션이 이 옵션을 재정의합니다.

자세한 내용은 10진수 문자열 및 금액 값 서식 지정(PDO_SQLSRV Driver)을 참조하세요.
PDO::SQLSRV_ATTR_DIRECT_QUERY Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) true 또는 false 직접 또는 준비된 쿼리 실행을 지정합니다. 자세한 내용은 PDO_SQLSRV 드라이버에서 직접 문 실행 및 준비된 문 실행을 참조 하세요.
PDO::SQLSRV_ATTR_ENCODING Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) PDO::SQLSRV_ENCODING_UTF8

PDO::SQLSRV_ENCODING_SYSTEM.
드라이버가 서버와 통신하는 데 사용하는 문자 집합 인코딩을 설정합니다.

PDO::SQLSRV_ENCODING_BINARY 지원되지 않습니다.

기본값은 PDO::SQLSRV_ENCODING_UTF8.
PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) true 또는 false 날짜 및 시간 형식을 PHP DateTime 개체로 검색할지 여부를 지정합니다. false로 유지하면, 기본적으로 문자열로 반환됩니다.

이 옵션은 문 수준에서도 설정할 수 있습니다. 문 수준에서 설정하면, 문 수준 옵션이 이 옵션을 재정의합니다.

자세한 내용은 방법: PDO_SQLSRV 드라이버를 사용하여 날짜 및 시간 형식을 PHP 날짜/시간 개체로 검색을 참조하세요.
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) true 또는 false 숫자 SQL 형식(비트, 정수, smallint, tinyint, float 또는 real)을 사용하여 열에서 숫자 인출을 처리합니다.

연결 옵션 플래그 ATTR_STRINGIFY_FETCHES를 켜면, SQLSRV_ATTR_FETCHES_NUMERIC_TYPE이 켜져 있더라도 반환 값이 문자열입니다.

바인딩 열에 반환된 PDO 형식이 PDO_PARAM_INT이면, SQLSRV_ATTR_FETCHES_NUMERIC_TYPE이 꺼져 있더라도 정수 열의 반환 값이 int입니다.
PDO::SQLSRV_ATTR_FORMAT_DECIMALS Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) true 또는 false 적절한 경우 앞에 오는 0을 10진수 문자열에 추가할지 여부를 지정합니다. 이 옵션을 설정하면 PDO::SQLSRV_ATTR_DECIMAL_PLACES 옵션을 사용하여 금액 형식을 지정할 수 있습니다. false를 유지하면 정확한 정밀도를 반환하고 1보다 작은 값에 대해 선행 0을 생략하는 기본 동작이 사용됩니다.

이 옵션은 문 수준에서도 설정할 수 있습니다. 문 수준에서 설정하면, 문 수준 옵션이 이 옵션을 재정의합니다.

자세한 내용은 10진수 문자열 및 금액 값 서식 지정(PDO_SQLSRV Driver)을 참조하세요.
PDO::SQLSRV_ATTR_QUERY_TIMEOUT Microsoft Drivers for PHP for SQL Server(SQL 서버용 PHP용 Microsoft 드라이버) 정수 쿼리 시간 제한을 초 단위로 설정합니다.

기본값은 0입니다. 즉, 드라이버가 결과를 무기한 대기합니다.

음수는 허용되지 않습니다.

PDO는 미리 정의된 특성 중 일부를 처리하고 드라이버가 다른 특성을 처리해야 합니다. 모든 사용자 지정 특성 및 연결 옵션은 드라이버에서 처리됩니다. PDO::ATTR_ERRMODE 설정에 따라 지원되지 않는 특성, 연결 옵션 또는 지원되지 않는 값이 보고됩니다.

Microsoft Drivers for PHP for SQL Server의 2.0 버전에서 PDO에 대한 지원이 추가되었습니다.

예시

이 샘플에서는 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" ) ));  
   }  
?>