Supporto FILESTREAM (OLE DB)

Si applica a: sìSQL Server (tutte le versioni supportate)

A partire SQL Server 2008 da e Native Client SQL Server 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 usa 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. Se wType è DBTYPE_IUNKNOWN nello struct DBBINDING, il controllo della lunghezza può essere disabilitato omettendo DBPART_LENGTH in 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 in caso di connessione a server SQL Server 2005 (9.x) o versione successiva. 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.

Vedere anche

Programmazione in SQL Server Native Client