Utilizzo dell'archiviazione FILESTREAM nelle applicazioni client
Se si utilizza FILESTREAM per archiviare dati di oggetti binari di grandi dimensioni (BLOB), è possibile utilizzare API Win32 per usare i file. Per supportare l'utilizzo dei dati BLOB FILESTREAM nelle applicazioni Win32, SQL Server fornisce le seguenti funzioni e API:
PathName restituisce un percorso come token a un BLOB. Un'applicazione utilizza questo token per ottenere un handle Win32 e operare sui dati BLOB.
GET_FILESTREAM_TRANSACTION_CONTEXT () restituisce un token che rappresenta la transazione corrente di una sessione. Un'applicazione utilizza questo token per associare le operazioni di flusso file system FILESTREAM alla transazione.
Un handle di file Win32 è ottenuto in API OpenSqlFilestream. L'applicazione utilizza l'handle per trasmettere i dati FILESTREAM e può passare quindi l'handle alle seguenti API Win32: , , , , o . Se l'applicazione chiama qualsiasi altra API utilizzando l'handle, viene restituito un errore ERROR_ACCESS_DENIED. L'applicazione deve chiudere l'handle utilizzando .
Tutti gli accessi al contenitore di dati FILESTREAM vengono eseguiti in una transazione SQL Server. Le istruzioni Transact-SQL possono essere eseguite nella stessa transazione per mantenere la consistenza tra i dati SQL e i dati FILESTREAM.
Vedere anche