SQL Server и C # быстрое копирование изображений из FILESTREAM на локальный диск - PullRequest
0 голосов
/ 05 июля 2019

В SQL Server у меня есть таблица с 3 каплями, сохраненная как FILESTREAM вне базы данных. Я хочу сделать локальную копию некоторых из этих файлов, используя имена, хранящиеся в той же таблице.

Я могу сделать это, выполнив хранимую процедуру, которая заполняет набор данных в C #, и затем я могу идти построчно, экспортируя большие двоичные объекты на диск. Проблема в том, что набор данных огромен, поскольку содержит все изображения, прежде чем я смогу начать итерацию набора данных и экспортировать их.

Какие у меня лучшие варианты? И какие-нибудь советы, как это сделать?

У меня есть следующие идеи: 1 - получить доступ к файлам больших двоичных объектов непосредственно из их хранилища на сервере и скопировать и переименовать их на локальный диск. Это должно быть быстро, но я не смог сказать, какой файл соответствует какой строке в таблице. 2 - Создайте хранимую процедуру курсора и построчно итерируйте в C #, не копируя весь результат в память. Но я не уверен, что это будет достаточно быстро и не нашел хорошего примера обработки курсора во внешнем c #.

...