Supporto FILESTREAM (OLE DB)
A partire da SQL Server 2008 e SQL Server Native Client 10.0, OLE DB supporta la funzionalità FILESTREAM avanzata. Per altre informazioni su questa funzionalità, vedere Supporto FILESTREAM. Per gli esempi, vedere FILESTREAM e OLE DB.
Per inviare e ricevere valori varbinary(max)
maggiori di 2 GB, un'applicazione utilizza DBTYPE_IUNKNOWN
in associazioni di parametri e di risultati. Per i parametri il provider deve chiamare IUnknown::QueryInterface per ISequentialStream e per i risultati che restituiscono ISequentialStream.
Per OLE DB il controllo relativo ai valori ISequentialStream diventa meno rigido. Quando wType si trova DBTYPE_IUNKNOWN
nello DBBINDING
struct, il controllo lunghezza può essere disabilitato omettendo DBPART_LENGTH
da dwPart o impostando la lunghezza dei dati (in corrispondenza dell'offset obLength nel buffer dei dati) su ~0. In questo caso, il provider non controllerà la lunghezza del valore e richiederà e restituirà tutti i dati disponibili tramite il flusso. Questa modifica verrà applicata a tutti i tipi LOB (Large Object) e XML, ma solo quando si è connessi a SQL Server server 2005 (o versioni successive). In questo modo, gli sviluppatori disporranno di maggiore flessibilità, mantenendo la coerenza e la compatibilità con le versioni precedenti per applicazioni esistenti e server legacy.
Questa modifica ha effetto su tutte le interfacce che trasferiscono dati, principalmente IRowset::GetData, ICommand::Execute e IRowsetFastLoad::InsertRow.