다음을 통해 공유


FILESTREAM 지원(OLE DB)

SQL Server 2008과 SQL Server Native Client 10.0부터 OLE DB에 향상된 FILESTREAM 기능이 지원됩니다. 이 기능에 대한 자세한 내용은 FILESTREAM 지원을 참조하십시오.

2GB보다 큰 varbinary(max) 값을 보내고 받기 위해 응용 프로그램에서는 매개 변수와 결과 바인딩에 DBTYPE_IUNKNOWN을 사용합니다. 매개 변수의 경우 공급자는 ISequentialStreamISequentialStream을 반환하는 결과에 대해 IUnknown::QueryInterface를 호출해야 합니다. 

OLE DB의 경우 ISequentialStream 값과 관련된 검사가 완화될 것입니다. DBBINDING 구조체에서 wType이 DBTYPE_IUNKNOWN인 경우 dwPart에서 DBPART_LENGTH를 생략하거나, 데이터의 길이(데이터 버퍼의 obLength 오프셋)를 ~0으로 설정하여 길이 검사를 해제할 수 있습니다. 이렇게 하면 공급자는 값의 길이를 검사하지 않고 스트림을 통해 사용할 수 있는 모든 데이터를 요청하고 반환합니다. 이러한 변경 사항은 모든 LOB(큰 개체) 형식과 XML에 적용되지만, 이는 SQL Server 2005 이상의 서버에 연결된 경우에만 해당됩니다. 이 기능은 개발자에게 더 나은 융통성을 제공할 뿐만 아니라 기존 응용 프로그램 및 하위 서버를 위한 일관성과 이전 버전과의 호환성을 유지할 수 있게 도와줍니다.

이 변경 사항은 IRowset::GetData, ICommand::ExecuteIRowsetFastLoad::InsertRow를 비롯하여 모든 데이터 전송 인터페이스에 영향을 줍니다.