Данные BLOB-объекта Concat в Sql server 2008 - PullRequest
1 голос
/ 20 мая 2019

У меня есть таблица, которая содержит тип данных изображения в SQL SERVER 2008:

select ID,refID,blobcontent from dbo.Script where RefId=6000

ID   refID  blobcontent
456   45         0x50232323
987   45         0x54238798
852   45         0x52741985

Я хочу объединить blobcontent в строке и вставить в новую группу таблиц с помощью refID.(содержимое блоба длинное, я просто вставляю образец):

DECLARE @GroupDept VARBINARY(max)  
SELECT  @GroupDept = COALESCE(@GroupDept + ', ', '')+ blobcontent
FROM dbo.Script where RefId=6000
SELECT @GroupDept as 'total'

но получите ошибку:

The data types varbinary(max) and varchar are incompatible in the add operator

Где моя ошибка?любая помощь приветствуется.

1 Ответ

0 голосов
/ 20 мая 2019

Попробуйте это:

Сначала создайте и заполните образец таблицы ( Пожалуйста, сохраните этот шаг в ваших будущих вопросах):

DECLARE @Script AS TABLE
(
    Id int,
    RefId int,
    Blobcontent varbinary(max)
);

INSERT INTO @Script (Id, RefId, Blobcontent) VALUES
(456, 45, 0x50232323),
(987, 45, 0x54238798),
(852, 45, 0x52741985);

Запрос:

DECLARE @blobcontent varbinary(max)

SELECT @blobcontent = COALESCE(@blobcontent, 0x0) + blobcontent
FROM @Script
ORDER BY Id;

SELECT @blobcontent;
...