Condividi tramite


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.

Vedere anche

Programmazione in SQL Server Native Client