SQL Server Native Client 데이터 원본 개체(OLE DB)

적용 대상: SQL Server Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System(PDW)

중요

SQL Server Native Client(약칭 SNAC)는 SQL Server 2022(16.x) 및 SSMS(SQL Server Management Studio) 19에서 제거되었습니다. SQL Server Native Client OLE DB 공급자(SQLNCLI 또는 SQLNCLI11)와 레거시 Microsoft OLE DB Provider for SQL Server(SQLOLEDB)는 모두 새로운 개발에 권장되지 않습니다. 앞으로 SQL Server용 새 Microsoft OLE DB 드라이버(MSOLEDBSQL)로 전환합니다.

SQL Server Native Client SQL Server 같은 데이터 저장소에 대한 링크를 설정하는 데 사용되는 OLE DB 인터페이스 집합에 데이터 원본이라는 용어를 사용합니다. 공급자의 데이터 원본 개체 인스턴스를 만드는 것은 SQL Server Native Client 소비자의 첫 번째 작업입니다.

각 OLE DB 공급자는 자체적으로 사용할 CLSID(클래스 식별자)를 선언합니다. SQL Server Native Client OLE DB 공급자의 CLSID는 C/C++ GUID CLSID_SQLNCLI10(참조하는 sqlncli.h 파일에서 기호 SQLNCLI_CLSID 올바른 progid로 확인됨)입니다. CLSID가 있으면 소비자는 OLE CoCreateInstance 함수를 사용하여 데이터 원본 개체의 인스턴스를 만듭니다.

SQL Server Native Client in-process 서버입니다. SQL Server Native Client OLE DB 공급자 개체의 인스턴스는 실행 가능한 컨텍스트를 나타내기 위해 CLSCTX_INPROC_SERVER 매크로를 사용하여 만들어집니다.

SQL Server Native Client OLE DB 공급자 데이터 원본 개체는 소비자가 기존 SQL Server 데이터베이스에 연결할 수 있도록 하는 OLE DB 초기화 인터페이스를 노출합니다.

SQL Server Native Client OLE DB 공급자를 통해 이루어진 모든 연결은 다음 옵션을 자동으로 설정합니다.

  • SET ANSI_WARNINGS ON

  • SET ANSI_NULLS ON

  • SET ANSI_PADDING ON

  • SET ANSI_NULL_DFLT_ON ON

  • SET QUOTED_IDENTIFIER ON

  • SET CONCAT_OF_NULL_YIELDS_NULL ON

이 예제에서는 클래스 식별자 매크로를 사용하여 SQL Server Native Client OLE DB 공급자 데이터 원본 개체를 만들고 해당 IDBInitialize 인터페이스에 대한 참조를 가져옵니다.

IDBInitialize*   pIDBInitialize;  
HRESULT          hr;  
  
hr = CoCreateInstance(CLSID_SQLNCLI10, NULL, CLSCTX_INPROC_SERVER,  
    IID_IDBInitialize, (void**) &pIDBInitialize);  
  
if (SUCCEEDED(hr))  
{  
    //  Perform necessary processing with the interface.  
    pIDBInitialize->Uninitialize();  
    pIDBInitialize->Release();  
}  
else  
{  
    // Display error from CoCreateInstance.  
}  

SQL Server Native Client OLE DB 공급자 데이터 원본 개체의 인스턴스를 성공적으로 만들면 소비자 애플리케이션은 데이터 원본을 초기화하고 세션을 만들어 계속할 수 있습니다. OLE DB 세션은 데이터 액세스 및 조작을 가능하게 하는 인터페이스를 제공합니다.

SQL Server Native Client OLE DB 공급자는 성공적인 데이터 원본 초기화의 일환으로 지정된 SQL Server 인스턴스에 첫 번째 연결을 만듭니다. 이 연결은 데이터 원본 초기화 인터페이스에 대한 참조가 유지되는 동안이나 IDBInitialize::Uninitialize 메서드가 호출될 때까지 유지됩니다.

섹션 내용

참고 항목

SQL Server Native Client(OLE DB)