다음을 통해 공유


데이터 원본 개체(OLE DB)

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

각 OLE DB 공급자는 자체적으로 사용할 CLSID(클래스 식별자)를 선언합니다. SQL Server Native Client OLE DB 공급자의 CLSID는 C/C++ GUID CLSID_SQLNCLI10(참조하는 sqlncli.h 파일의 올바른 progid에 resolve 기호 SQLNCLI_CLSID)입니다. 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 공급자 데이터 원본 개체의 instance 성공적으로 만들면 소비자 애플리케이션은 데이터 원본을 초기화하고 세션을 만들어 계속할 수 있습니다. OLE DB 세션은 데이터 액세스 및 조작을 가능하게 하는 인터페이스를 제공합니다.

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

섹션 내용

참고 항목

SQL Server Native Client(OLE DB)