SQL Server Native Client OLE DB 공급자는 ISequentialStream 인터페이스를 노출하여 SQL Server ntext, text, image, varchar(max), nvarchar(max), varbinary(max) 및 xml 데이터 형식에 대한 소비자 액세스를 BLOB(Binary Large Objects)로 지원합니다. ISequentialStream의 Read 메서드를 사용하면 소비자가 관리 가능한 청크에서 많은 데이터를 검색할 수 있습니다.
이 기능을 보여주는 샘플은 큰 데이터 설정(OLE DB)을 참조하세요.
소비자가 데이터 수정을 위해 바인딩된 접근자에 인터페이스 포인터를 제공하는 경우 SQL Server Native Client OLE DB 공급자는 소비자가 구현한 IStorage 인터페이스를 사용할 수 있습니다.
큰 값 데이터 형식의 경우 SQL Server Native Client OLE DB 공급자는 IRowset 및 DDL 인터페이스에서 형식 크기 가정을 확인합니다. 최대 크기가 무제한으로 설정된 varchar, nvarchar 및 varbinary 데이터 형식이 있는 열은 열 데이터 형식을 반환하는 스키마 행 집합 및 인터페이스를 통해 ISLONG으로 표시됩니다.
SQL Server Native Client OLE DB 공급자는 각각 varchar(max), varbinary(max) 및 nvarchar(max) 형식을 DBTYPE_STR, DBTYPE_BYTES 및 DBTYPE_WSTR 노출합니다.
이러한 형식을 사용하려면 애플리케이션에 다음과 같은 옵션이 있습니다.
형식(DBTYPE_STR, DBTYPE_BYTES, DBTYPE_WSTR)으로 바인딩합니다. 버퍼가 충분히 크지 않은 경우 이전 릴리스에서 이러한 형식과 똑같이 잘림이 발생합니다(이제 더 큰 값을 사용할 수 있음).
형식으로 바인딩하고 DBTYPE_BYREF 지정합니다.
DBTYPE_IUNKNOWN으로 바인딩하고 스트리밍을 사용합니다.
DBTYPE_IUNKNOWN 바인딩된 경우 ISequentialStream 스트림 기능이 사용됩니다. SQL Server Native Client OLE DB 공급자는 저장 프로시저가 이러한 데이터 형식을 클라이언트에 DBTYPE_IUNKNOWN 노출되는 반환 값으로 반환하는 시나리오를 용이하게 하기 위해 큰 값 데이터 형식에 대한 DBTYPE_IUNKNOWN 바인딩 출력 매개 변수를 지원합니다.
스토리지 개체 제한 사항
SQL Server Native Client OLE DB 공급자는 열려 있는 단일 스토리지 개체만 지원할 수 있습니다. 둘 이상의 스토리지 개체를 열려고 시도합니다(둘 이상의 ISequentialStream 인터페이스 포인터에 대한 참조를 가져오기 위해)는 DBSTATUS_E_CANTCREATE 반환합니다.
SQL Server Native Client OLE DB 공급자에서 DBPROP_BLOCKINGSTORAGEOBJECTS 읽기 전용 속성의 기본값은 VARIANT_TRUE. 이는 스토리지 개체가 활성 상태이면 스토리지 개체에 있는 메서드가 아닌 일부 메서드가 E_UNEXPECTED 함께 실패한다는 것을 나타냅니다.
스토리지 개체를 참조하는 행 접근자가 만들어질 때 소비자가 구현한 스토리지 개체에서 제공하는 데이터의 길이를 SQL Server Native Client OLE DB 공급자에 알려야 합니다. 소비자는 접근자를 만드는 데 사용되는 DBBINDING 구조체에 길이 표시기를 바인딩해야 합니다.
행에 큰 데이터 값이 하나 이상 있고 DBPROP_ACCESSORDER DBPROPVAL_AO_RANDOM 않은 경우 소비자는 SQL Server Native Client OLE DB 공급자 커서 지원 행 집합을 사용하여 행 데이터를 검색하거나 다른 행 값을 검색하기 전에 모든 큰 데이터 값을 처리해야 합니다. DBPROP_ACCESSORDER DBPROPVAL_AO_RANDOM 경우 SQL Server Native Client OLE DB 공급자는 모든 xml 데이터 형식을 BLOB(Binary Large Objects)로 캐시하여 순서에 따라 액세스할 수 있습니다.