다음을 통해 공유


SQLSetConnectAttr

적용 대상: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

SQL Server Native Client ODBC 드라이버는 SQL_ATTR_CONNECTION_TIMEOUT 설정을 무시합니다.

SQL_ATTR_TRANSLATE_LIB 무시됩니다. 다른 번역 라이브러리 지정은 지원되지 않습니다. 애플리케이션이 SQL Server용 Microsoft ODBC 드라이버를 사용하기 위해 쉽게 이식될 수 있도록 하기 위해 SQL_ATTR_TRANSLATE_LIB 있는 모든 값이 드라이버 관리자의 버퍼 안팎으로 복사됩니다.

SQL Server Native Client ODBC 드라이버는 반복 가능한 읽기 트랜잭션 격리를 직렬화 가능으로 구현합니다.

SQL Server 2005(9.x)는 SQL_COPT_SS_TXN_ISOLATION 새 트랜잭션 격리 특성에 대한 지원을 도입했습니다. SQL_COPT_SS_TXN_ISOLATION SQL_TXN_SS_SNAPSHOT 설정하면 트랜잭션이 스냅샷 격리 수준에서 수행됩니다.

참고 항목

SQL_ATTR_TXN_ISOLATION을 사용하면 SQL_TXN_SS_SNAPSHOT을 제외한 다른 모든 격리 수준을 설정할 수 있습니다. 스냅샷 격리를 사용하려면 SQL_COPT_SS_TXN_ISOLATION 통해 SQL_TXN_SS_SNAPSHOT 설정해야 합니다. 그러나 격리 수준을 검색할 때는 SQL_ATTR_TXN_ISOLATION이나 SQL_COPT_SS_TXN_ISOLATION을 모두 사용할 수 있습니다.

ODBC 문 특성을 연결 특성으로 승격하면 의도하지 않은 결과가 발생할 수 있습니다. 결과 집합 처리를 위해 서버 커서를 요청하는 문 특성은 연결로 승격할 수 있습니다. 예를 들어 ODBC 문 특성 SQL_ATTR_CONCURRENCY 기본 SQL_CONCUR_READ_ONLY 보다 제한적인 값으로 설정하면 드라이버가 연결에 제출된 모든 문에 동적 커서를 사용하도록 지시합니다. 연결의 문에서 ODBC 카탈로그 함수를 실행하면 커서 동작이 읽기 전용으로 변경되었음을 나타내는 진단 레코드와 SQL_SUCCESS_WITH_INFO 반환됩니다. 동일한 연결에서 COMPUTE 절을 포함하는 Transact-SQL SELECT 문을 실행하려고 시도하면 실패합니다.

SQL Server Native Client ODBC 드라이버는 sqlncli.h에 정의된 ODBC 연결 특성에 대한 다양한 드라이버별 확장을 지원합니다. SQL Server Native Client ODBC 드라이버는 연결 전에 특성을 설정해야 하거나 이미 설정된 경우 해당 특성을 무시할 수 있습니다. 다음 표에서는 제한 사항을 나열합니다.

SQL Server 특성 서버에 대한 연결 전후 설정
SQL_COPT_SS_ANSI_NPW 이전
SQL_COPT_SS_APPLICATION_INTENT 이전
SQL_COPT_SS_ATTACHDBFILENAME 이전
SQL_COPT_SS_BCP 이전
SQL_COPT_SS_BROWSE_CONNECT 이전
SQL_COPT_SS_BROWSE_SERVER 이전
SQL_COPT_SS_CONCAT_NULL 이전
SQL_COPT_SS_CONNECTION_DEAD 이후
SQL_COPT_SS_ENCRYPT 이전
SQL_COPT_SS_ENLIST_IN_DTC 이후
SQL_COPT_SS_ENLIST_IN_XA 이후
SQL_COPT_SS_FALLBACK_CONNECT 이전
SQL_COPT_SS_FAILOVER_PARTNER 이전
SQL_COPT_SS_INTEGRATED_SECURITY 이전
SQL_COPT_SS_MARS_ENABLED 이전
SQL_COPT_SS_MULTISUBNET_FAILOVER 이전
SQL_COPT_SS_OLDPWD 이전
SQL_COPT_SS_PERF_DATA 이후
SQL_COPT_SS_PERF_DATA_LOG 이후
SQL_COPT_SS_PERF_DATA_LOG_NOW 이후
SQL_COPT_SS_PERF_QUERY 이후
SQL_COPT_SS_PERF_QUERY_INTERVAL 이후
SQL_COPT_SS_PERF_QUERY_LOG 이후
SQL_COPT_SS_PRESERVE_CURSORS 이전
SQL_COPT_SS_QUOTED_IDENT 여기서는
SQL_COPT_SS_TRANSLATE 여기서는
SQL_COPT_SS_TRUST_SERVER_CERTIFICATE 이전
SQL_COPT_SS_TXN_ISOLATION 여기서는
SQL_COPT_SS_USE_PROC_FOR_PREP 여기서는
SQL_COPT_SS_USER_DATA 여기서는
SQL_COPT_SS_WARN_ON_CP_ERROR 이전

연결 전 특성과 동일한 세션, 데이터베이스 또는 SQL Server 상태에 해당하는 Transact-SQL 명령을 사용하면 예기치 않은 동작이 발생할 수 있습니다. 예를 들면 다음과 같습니다.

SQLSetConnectAttr(SQL_COPT_SS_QUOTED_IDENT, SQL_QI_ON) // turn ON via attribute  
SQLDriverConnect(...);  
SQLExecDirect("SET QUOTED_IDENTIFIER OFF") // turn OFF via Transact-SQL  
SQLSetConnectAttr(SQL_ATTR_CURRENT_CATALOG, ...) // restores to pre-connect attribute value  

SQL_COPT_SS_ANSI_NPW

SQL_COPT_SS_ANSI_NPW는 비교와 연결의 NULL, 문자 데이터 형식 패딩 및 경고에 ISO 처리를 사용하거나 사용하지 않도록 설정합니다. 자세한 내용은 SET ANSI_NULLS, SET ANSI_PADDING, SET ANSI_WARNINGS 및 SET CONCAT_NULL_YIELDS_NULL 참조하세요.

설명
SQL_AD_ON 기본값. 연결에서 NULL 비교, 패딩, 경고 및 NULL 연결 처리에 ANSI 기본 동작을 사용합니다.
SQL_AD_OFF 연결은 NULL, 문자 데이터 형식 패딩 및 경고의 SQL Server 정의 처리를 사용합니다.

연결 풀링을 사용하는 경우 SQL_COPT_SS_ANSI_NPW SQLSetConnectAttr가 아닌 연결 문자열 설정해야 합니다. 연결이 완료되면 연결 풀링을 사용할 때 이 특성을 변경하려고 하면 자동으로 실패합니다.

SQL_COPT_SS_APPLICATION_INTENT

서버에 연결할 때 애플리케이션 작업 유형을 선언합니다. 가능한 값은 ReadonlyReadWrite입니다. 예시:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_APPLICATION_INTENT, TEXT("Readonly"), SQL_NTS)  

기본값은 ReadWrite입니다. Always On 가용성 그룹 AG에 대한 SQL Server Native Client의 지원에 대한 자세한 내용은 고가용성 재해 복구에 대한 SQL Server Native Client 지원을 참조하세요.

SQL_COPT_SS_ATTACHDBFILENAME

SQL_COPT_SS_ATTACHDBFILENAME 연결할 수 있는 데이터베이스의 기본 파일 이름을 지정합니다. 이 데이터베이스는 연결되어 해당 연결에 대한 기본 데이터베이스가 됩니다. SQL_COPT_SS_ATTACHDBFILENAME 사용하려면 데이터베이스 이름을 SQL_ATTR_CURRENT_CATALOG 연결 특성의 값으로 지정하거나 SQLDriverConnectDATABASE = 매개 변수에 지정해야 합니다. 데이터베이스가 이전에 연결된 경우 SQL Server는 데이터베이스를 다시 연결하지 않습니다.

설명
문자열에 대한 SQLPOINTER 문자열에는 연결할 데이터베이스에 대한 기본 파일의 이름이 포함됩니다. 파일의 전체 경로 이름을 포함합니다.

SQL_COPT_SS_BCP

SQL_COPT_SS_BCP를 사용하면 연결에서 대량 복사 함수를 사용할 수 있습니다. 자세한 내용은 대량 복사 함수를 참조 하세요.

설명
SQL_BCP_OFF 기본값. 대량 복사 함수는 연결에서 사용할 수 없습니다.
SQL_BCP_ON 대량 복사 함수는 연결에서 사용할 수 있습니다.

SQL_COPT_SS_BROWSE_CONNECT

이 특성은 SQLBrowseConnect에서 반환된 결과 집합을 사용자 지정하는 데 사용됩니다. SQL_COPT_SS_BROWSE_CONNECT SQL Server의 열거형 인스턴스에서 추가 정보 반환을 사용하거나 사용하지 않도록 설정합니다. 여기에는 서버가 클러스터인지 여부, 다른 인스턴스의 이름 및 버전 번호와 같은 정보가 포함될 수 있습니다.

설명
SQL_MORE_INFO_NO 기본값. 서버 목록을 반환합니다.
SQL_MORE_INFO_YES SQLBrowseConnect 는 확장된 서버 속성 문자열을 반환합니다.

SQL_COPT_SS_BROWSE_SERVER

이 특성은 SQLBrowseConnect에서 반환된 결과 집합을 사용자 지정하는 데 사용됩니다. SQL_COPT_SS_BROWSE_SERVER SQLBrowseConnect에서 정보를 반환하는 서버 이름을 지정합니다.

설명
computername SQLBrowseConnect 는 지정된 컴퓨터에서 SQL Server 인스턴스 목록을 반환합니다. 서버 이름에 이중 백슬라시(\\)를 사용하면 안 됩니다(예: \\MyServer 대신 MyServer를 사용해야 합니다).
NULL 기본값. SQLBrowseConnect 는 도메인의 모든 서버에 대한 정보를 반환합니다.

SQL_COPT_SS_CONCAT_NULL

SQL_COPT_SS_CONCAT_NULL 문자열을 연결하면 NULL의 ISO 처리를 사용하거나 사용하지 않도록 설정합니다. 자세한 내용은 SET CONCAT_NULL_YIELDS_NULL을 참조하세요.

설명
SQL_CN_ON 기본값. 연결에서 문자열을 연결할 때 ISO 기본값을 사용하여 NULL 값을 처리합니다.
SQL_CN_OFF 연결은 문자열을 연결할 때 NULL 값을 처리하는 데 SQL Server 정의 동작을 사용합니다.

SQL_COPT_SS_ENCRYPT

연결의 암호화를 제어합니다.

암호화는 서버의 인증서를 사용합니다. 연결 특성 SQL_COPT_SS_TRUST_SERVER_CERTIFICATE SQL_TRUST_SERVER_CERTIFICATE_YES 설정되거나 연결 문자열 "TrustServerCertificate=yes"가 포함되지 않는 한 인증 기관에서 확인해야 합니다. 이러한 조건 중 하나가 true이면 서버에 인증서가 없는 경우 서버에서 생성 및 서명된 인증서를 사용하여 연결을 암호화할 수 있습니다.

설명
SQL_EN_ON 연결이 암호화됩니다.
SQL_EN_OFF 연결은 암호화되지 않습니다. 기본값입니다.

SQL_COPT_SS_ENLIST_IN_DTC

클라이언트는 MS DTC(Microsoft Distributed Transaction Coordinator) OLE DB ITransactionDispenser::BeginTransaction 메서드를 호출하여 MS DTC 트랜잭션을 시작하고 트랜잭션을 나타내는 MS DTC 트랜잭션 개체를 만듭니다. 그런 다음 애플리케이션은 SQL_COPT_SS_ENLIST_IN_DTC 옵션을 사용하여 SQLSetConnectAttr를 호출하여 트랜잭션 개체를 ODBC 연결과 연결합니다. 관련된 모든 데이터베이스 작업은 MS DTC 트랜잭션의 보호 아래 수행됩니다. 애플리케이션은 SQL_DTC_DONE 사용하여 SQLSetConnectAttr를 호출하여 연결의 DTC 연결을 종료합니다.

설명
DTC 개체* SQL Server로 내보낼 트랜잭션을 지정하는 MS DTC OLE 트랜잭션 개체입니다.
SQL_DTC_DONE DTC 트랜잭션의 종료를 구분합니다.

SQL_COPT_SS_ENLIST_IN_XA

XA 규격 TP(트랜잭션 프로세서)를 사용하여 XA 트랜잭션을 시작하려면 클라이언트가 Open Group tx_begin 함수를 호출합니다. 그런 다음 애플리케이션은 TRUE의 SQL_COPT_SS_ENLIST_IN_XA 매개 변수를 사용하여 SQLSetConnectAttr를 호출하여 XA 트랜잭션을 ODBC 연결과 연결합니다. 모든 관련 데이터베이스 작업은 XA 트랜잭션의 보호 하에 수행됩니다. ODBC 연결과 XA 연결을 종료하려면 클라이언트가 FALSE의 SQL_COPT_SS_ENLIST_IN_XA 매개 변수를 사용하여 SQLSetConnectAttr를 호출해야 합니다. 자세한 내용은 Microsoft Distributed Transaction Coordinator 설명서를 참조하세요.

SQL_COPT_SS_FALLBACK_CONNECT

이 특성은 더 이상 지원되지 않습니다.

SQL_COPT_SS_FAILOVER_PARTNER

SQL Server에서 데이터베이스 미러링에 사용되는 장애 조치(failover) 파트너의 이름을 지정하거나 검색하는 데 사용되며, SQL Server에 연결하기 전에 설정해야 하는 null로 끝나는 문자열입니다.

연결을 만든 후 애플리케이션은 SQLGetConnectAttr를 사용하여 이 특성을 쿼리하여 장애 조치(failover) 파트너의 ID를 확인할 수 있습니다. 주 서버에 장애 조치(failover) 파트너가 없는 경우 이 속성은 빈 문자열을 반환합니다. 이렇게 하면 스마트 애플리케이션이 가장 최근에 결정된 백업 서버를 캐시할 수 있지만, 이러한 애플리케이션은 연결이 처음 설정된 경우에만 정보가 업데이트되거나 풀된 경우 다시 설정되며 장기 연결에 대한 최신 상태가 될 수 있음을 알고 있어야 합니다.

자세한 내용은 데이터베이스 미러링 사용을 참조하세요.

SQL_COPT_SS_INTEGRATED_SECURITY

SQL_COPT_SS_INTEGRATED_SECURITY 서버 로그인에서 액세스 유효성 검사를 위해 Windows 인증을 강제로 사용합니다. Windows 인증을 사용하는 경우 드라이버는 SQLConnect, SQLDriverConnect 또는 SQLBrowseConnect 처리의 일부로 제공된 사용자 식별자 및 암호 값을 무시합니다.

설명
SQL_IS_OFF 기본값. SQL Server 인증은 로그인할 때 사용자 식별자 및 암호의 유효성을 검사하는 데 사용됩니다.
SQL_IS_ON Windows 인증 모드는 SQL Server에 대한 사용자의 액세스 권한의 유효성을 검사하는 데 사용됩니다.

SQL_COPT_SS_MARS_ENABLED

이 특성은 MARS(Multiple Active Result Sets)를 사용하거나 사용하지 않도록 설정합니다. 기본적으로 MARS는 사용하지 않도록 설정됩니다. 이 특성은 SQL Server에 연결하기 전에 설정해야 합니다. 연결 SQL Server가 열리면 MARS는 연결 수명 동안 사용 또는 비활성화된 상태로 유지됩니다.

설명
SQL_MARS_ENABLED_NO 기본값. MARS(Multiple Active Result Sets)를 사용하지 않습니다.
SQL_MARS_ENABLED_YES MARS를 사용합니다.

MARS에 대한 자세한 내용은 MARS(다중 활성 결과 집합) 사용을 참조하세요.

SQL_COPT_SS_MULTISUBNET_FAILOVER

애플리케이션이 다른 서브넷의 Always On 가용성 그룹 AG(가용성 그룹)에 연결하는 경우 이 연결 속성은 (현재) 활성 서버에 대한 빠른 검색 및 연결을 제공하도록 SQL Server Native Client를 구성합니다. 예시:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_MULTISUBNET_FAILOVER, SQL_IS_ON, SQL_IS_INTEGER)  

Always On 가용성 그룹 AG에 대한 SQL Server Native Client의 지원에 대한 자세한 내용은 고가용성 재해 복구에 대한 SQL Server Native Client 지원을 참조하세요.

설명
SQL_IS_ON SQL Server Native Client는 장애 조치(failover)가 있는 경우 더 빠른 다시 연결을 제공합니다.
SQL_IS_OFF 장애 조치(failover)가 있는 경우 SQL Server Native Client는 더 빠른 다시 연결을 제공하지 않습니다.

SQL_COPT_SS_OLDPWD

SQL Server 인증에 대한 암호 만료는 SQL Server 2005(9.x)에서 도입되었습니다. SQL_COPT_SS_OLDPWD 특성은 클라이언트에서 이전 연결 암호와 새 연결 암호를 모두 제공할 수 있도록 추가되었습니다. 이 속성을 설정하면 연결 문자열 변경된 "이전 암호"가 포함되므로 공급자는 첫 번째 연결 또는 후속 연결에 연결 풀을 사용하지 않습니다.

자세한 내용은 프로그래밍 방식으로 암호 변경을 참조하세요.

설명
SQL_COPT_SS_OLD_PASSWORD 이전 암호를 포함하는 문자열에 대한 SQLPOINTER입니다. 이 값은 쓰기 전용이며 서버에 연결하기 전에 설정해야 합니다.

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA 성능 데이터 로깅을 시작하거나 중지합니다. 데이터 로그 파일 이름은 데이터 로깅을 시작하기 전에 설정해야 합니다. 아래의 SQL_COPT_SS_PERF_DATA_LOG를 참조하십시오.

설명
SQL_PERF_START 드라이버 샘플링 성능 데이터를 시작합니다.
SQL_PERF_STOP 성능 데이터를 샘플링하지 못하도록 카운터를 중지합니다.

자세한 내용은 SQLGetConnectAttr를 참조 하세요.

SQL_COPT_SS_PERF_DATA_LOG

SQL_COPT_SS_PERF_DATA_LOG는 성능 데이터를 기록하는 데 사용되는 로그 파일의 이름을 할당합니다. 로그 파일 이름은 애플리케이션 컴파일에 따라 Null로 끝나는 ANSI 또는 유니코드 문자열입니다. StringLength 인수는 SQL_NTS 합니다.

SQL_COPT_SS_PERF_DATA_LOG_NOW

SQL_COPT_SS_PERF_DATA_LOG_NOW 드라이버에 통계 로그 항목을 디스크에 쓰도록 지시합니다. StringLength 인수는 SQL_NTS 합니다.

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY 장기 실행 쿼리에 대한 로깅을 시작하거나 중지합니다. 로깅을 시작하기 전에 쿼리 로그 파일 이름을 제공해야 합니다. 애플리케이션은 로깅 간격을 설정하여 "장기 실행"을 정의할 수 있습니다.

설명
SQL_PERF_START 장기 실행 쿼리의 로깅을 시작합니다.
SQL_PERF_STOP 장기 실행 쿼리의 로깅을 중지합니다.

자세한 내용은 SQLGetConnectAttr를 참조 하세요.

SQL_COPT_SS_PERF_QUERY_INTERVAL

SQL_COPT_SS_PERF_QUERY_INTERVAL 쿼리 로깅 임계값을 밀리초 단위로 설정합니다. 임계값 내에서 확인되지 않는 쿼리는 장기 실행 쿼리 로그 파일에 기록됩니다. 쿼리 임계값에는 상한이 없습니다. 쿼리 임계값이 0이면 모든 쿼리가 로깅됩니다.

SQL_COPT_SS_PERF_QUERY_LOG

SQL_COPT_SS_PERF_QUERY_LOG 장기 실행 쿼리 데이터를 기록하기 위해 로그 파일의 이름을 할당합니다. 로그 파일 이름은 애플리케이션 컴파일에 따라 Null로 끝나는 ANSI 또는 유니코드 문자열입니다. StringLength 인수는 SQL_NTS 문자열 길이(바이트)여야 합니다.

SQL_COPT_SS_PRESERVE_CURSORS

이 특성을 사용하면 트랜잭션을 커밋/롤백할 때 연결이 커서를 유지할지 여부를 쿼리하고 설정할 수 있습니다. 설정이 SQL_PC_ON 또는 SQL_PC_OFF. 기본값은 SQL_PC_OFF. 이 설정은 SQLEndTran(또는 SQLTransact)을 호출할 때 드라이버가 커서를 닫을지 여부를 제어합니다.

설명
SQL_PC_OFF 기본값. SQLEndTran을 사용하여 트랜잭션이 커밋되거나 롤백될 때 커서가 닫힙니다.
SQL_PC_ON 비동기 모드에서 정적 또는 키 집합 커서를 사용하는 경우를 제외하고는 SQLEndTran을 사용하여 트랜잭션이 커밋되거나 롤백될 때 커서가 닫혀 있지 않습니다. 커서가 완전하게 채워지지 않은 상태에서 롤백을 실행하면 커서가 닫힙니다.

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT 연결에 제출된 ODBC 및 Transact-SQL 문에서 따옴표 붙은 식별자를 허용합니다. 따옴표 붙은 식별자를 제공하여 SQL Server Native Client ODBC 드라이버는 식별자에 공백 문자를 포함하는 "My Table"과 같은 잘못된 개체 이름을 허용합니다. 자세한 내용은 SET QUOTED_IDENTIFIER를 참조하세요.

설명
SQL_QI_OFF SQL Server 연결은 제출된 Transact-SQL에서 따옴표 붙은 식별자를 허용하지 않습니다.
SQL_QI_ON 기본값. 연결은 제출된 Transact-SQL에서 따옴표 붙은 식별자를 허용합니다.

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE MBCS 데이터가 교환될 때 드라이버가 클라이언트와 서버 코드 페이지 간에 문자를 변환하도록 합니다. 이 특성은 SQL Server문자, varchar텍스트 열에 저장된 데이터에만 영향을 줍니다.

설명
SQL_XL_OFF 드라이버는 클라이언트와 서버 간에 교환되는 문자 데이터에서 한 코드 페이지의 문자를 다른 코드 페이지로 변환하지 않습니다.
SQL_XL_ON 기본값. 드라이버는 클라이언트와 서버 간에 교환되는 문자 데이터에서 한 코드 페이지에서 다른 코드 페이지로 문자를 변환합니다. 드라이버는 문자 변환을 자동으로 구성하여 서버에 설치된 코드 페이지와 클라이언트에서 사용 중인 코드 페이지를 결정합니다.

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE를 사용하면 암호화를 사용할 때 드라이버가 인증서를 확인하거나 확인하지 않도록 설정합니다. 이 특성은 읽기/쓰기 값이지만 연결이 설정된 후에 설정해도 아무런 효과가 없습니다.

클라이언트 애플리케이션은 연결이 열린 후에 이 속성을 쿼리하여 실제 사용되는 암호화 및 유효성 검사 설정을 확인할 수 있습니다.

설명
SQL_TRUST_SERVER_CERTIFICATE_NO 기본값. 인증서 유효성 검사 없이 암호화를 사용할 수 없습니다.
SQL_TRUST_SERVER_CERTIFICATE_YES 인증서 유효성 검사 없이 암호화를 사용할 수 있습니다.

SQL_COPT_SS_TXN_ISOLATION

SQL_COPT_SS_TXN_ISOLATION SQL Server 특정 스냅샷 격리 특성을 설정합니다. 값이 SQL Server 전용이므로 SQL_ATTR_TXN_ISOLATION 사용하여 스냅샷 격리를 설정할 수 없습니다. 그러나 SQL_ATTR_TXN_ISOLATION 또는 SQL_COPT_SS_TXN_ISOLATION 사용하여 검색할 수 있습니다.

설명
SQL_TXN_SS_SNAPSHOT 한 트랜잭션에서 다른 트랜잭션의 변경 내용을 볼 수 없으며 다시 쿼리할 때도 변경 내용을 볼 수 없음을 나타냅니다.

스냅샷 격리에 대한 자세한 내용은 스냅샷 격리 작업을 참조하세요.

SQL_COPT_SS_USE_PROC_FOR_PREP

이 특성은 더 이상 지원되지 않습니다.

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA 사용자 데이터 포인터를 설정합니다. 사용자 데이터는 연결별로 기록되는 클라이언트 소유의 메모리입니다.

자세한 내용은 SQLGetConnectAttr를 참조 하세요.

SQL_COPT_SS_WARN_ON_CP_ERROR

이 특성은 코드 페이지 변환 중에 데이터가 손실될 경우 경고를 표시할지 여부를 결정합니다. 이는 서버에서 들어오는 데이터에만 적용됩니다.

설명
SQL_WARN_YES 코드 페이지 변환 중에 데이터 손실이 발생할 때 경고를 생성합니다.
SQL_WARN_NO (기본값) 코드 페이지 변환 중에 데이터 손실이 발생하면 경고를 생성하지 마세요.

SPN(서비스 사용자 이름)에 대한 SQLSetConnectAttr 지원

SQLSetConnectAttr를 사용하여 SQL_COPT_SS_SERVER_SPN 및 SQL_COPT_SS_FAILOVER_PARTNER_SPN 새 연결 특성의 값을 설정할 수 있습니다. 연결이 열려 있으면 이러한 특성을 설정할 수 없습니다. 연결이 열려 있을 때 이러한 특성을 설정하려고 하면 "현재 작업이 잘못되었습니다."라는 메시지와 함께 오류 HY011이 반환됩니다. (SQLSetConnectOption을 사용하여 이러한 값을 설정할 수도 있습니다.)

SPN 에 대한 자세한 내용은 ODBC(클라이언트 연결)의 SPN(서비스 사용자 이름)을 참조하세요.

SQL_COPT_SS_CONNECTION_DEAD

읽기 전용 특성입니다.

SQL_COPT_SS_CONNECTION_DEAD 대한 자세한 내용은 SQLGetConnectAttrODBC(데이터 원본에 연결)를 참조하세요.

예시

이 예제에서는 성능 데이터를 기록합니다.

SQLPERF*     pSQLPERF;  
SQLINTEGER   nValue;  
  
// See if you are already logging. SQLPERF* will be NULL if not.  
SQLGetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA, &pSQLPERF,  
    sizeof(SQLPERF*), &nValue);  
  
if (pSQLPERF == NULL)  
    {  
    // Set the performance log file name.  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG,  
        (SQLPOINTER) "\\My LogDirectory\\MyServerLog.txt", SQL_NTS);  
  
    // Start logging...  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA,  
        (SQLPOINTER) SQL_PERF_START, SQL_IS_INTEGER);  
    }  
else  
    {  
    // Take a snapshot now so that your performance statistics are discernible.  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
    }  
  
    // ...perform some action...  
  
// ...take a performance data snapshot...  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
  
    // ...perform more actions...  
  
// ...take another snapshot...  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
  
// ...and disable logging.  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA,  
    (SQLPOINTER) SQL_PERF_STOP, SQL_IS_INTEGER);  
  
// Continue on...  

참고 항목

SQLSetConnectAttr 함수
ODBC API 구현 정보
대량 복사 함수
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING(Transact-SQL)
SET ANSI_WARNINGS(Transact-SQL)
SET CONCAT_NULL_YIELDS_NULL(Transact-SQL)
SET QUOTED_IDENTIFIER(Transact-SQL)
SQLPrepare 함수
SQLGetInfo