Блоб объединить в SQL Server 2008 - PullRequest
0 голосов
/ 10 июня 2011

У меня есть таблица со следующей схемой:

Create table TempMedia

id int Primary key,
mediaid  int,
FileData varbinary(max)

В этой таблице есть части полного файла (мы используем элемент управления silverlight для разделения данных на веб-сервер)

Мы храним полный файл в другой таблице:

create table Media
id int primary key,
FileData varbinary(max)

Есть ли способ выполнить вставку в таблицу Media, которая полностью объединяет части файла в SQL, поэтому мы получаем полный файл вМедиа стол?На данный момент мы объединяем эти части файла, выбирая данные из таблицы TempMedia и объединяя их на веб-сервере, а затем вставляя обратно в таблицу Media.В идеале нам нравится делать это только на SQL Server.

1 Ответ

1 голос
/ 10 июня 2011

Это должно получить сцепленный двоичный файл, который вы затем можете вставить в таблицу.

DECLARE @bin varbinary(max)
SELECT @bin=CASE WHEN @bin is null THEN FileData ELSE @bin + FileData END
FROM TempMedia
WHERE MediaId = @mediaId
ORDER BY id -- make sure this is sequential
...