Zarządzanie danymi FILESTREAM przy użyciu systemu Win32

Do odczytu i zapisu danych na BLOB FILESTREAM, można użyć systemu Win32.Wymagane są następujące czynności:

  1. Przeczytaj FILESTREAM ścieżka do pliku.

  2. Odczytać bieżący kontekst transakcji.

  3. Uzyskanie dojścia Win32 i odczytywać i zapisywać dane BLOB FILESTREAM za pomocą uchwytu.

Uwaga

W przykładach w tym temacie wymagają włączoną FILESTREAM bazy danych i tabela, które zostały utworzone w Jak: Tworzenie FILESTREAM włączone Database a Jak: Tworzenie tabela na przechowywanie danych FILESTREAM.

Ścieżka do pliku FILESTREAM do czytania

Każda komórka w tabela FILESTREAM ma ścieżka pliku, który jest skojarzony z nim.Aby przeczytać ścieżka, należy użyć PathName Właściwość varbinary(max) Kolumna Transact-SQL Instrukcja. W poniższym przykładzie pokazano, jak odczytywać ścieżka pliku varbinary(max) Kolumna.

Odczytywanie kontekstu transakcji

To obtain the current transaction context, use the Transact-SQLGET_FILESTREAM_TRANSACTION_CONTEXT() function.W poniższym przykładzie przedstawiono sposób rozpocząć transakcję i odczytać bieżący kontekst transakcji.

Uzyskanie dojścia do pliku Win32

W celu uzyskania dojścia do pliku Win32, wywołać OpenSqlFilestream INTERFEJSU API. Ten interfejs API jest eksportowany z pliku sqlncli.dll.Zwracane dojście mogą być przekazywane do żadnego z następujących interfejsów Win32 API: ReadFile, WriteFile, TransmitFile, SetFilePointer, SetEndOfFile, or FlushFileBuffers.Następujące przykłady przedstawiają metody uzyskiwania dojścia do pliku Win32, a następnie używać go do odczytu i zapisu danych na BLOB FILESTREAM.