Типы данных изображения недопустимы для локальных переменных (использование openrowset не может заставить его работать)
Использование Sql server 2005
Мне нужно вызвать хранимую процедуру, которая имеет много параметров и один столбец изображения, который используется для документа Word. Я не могу изменить базу данных, так как она не находится под моим контролем. Я не могу установить результат openrowset переменной, как я получаю
The text, ntext, and image data types are invalid for local variables.
Что такое обходной путь?
Ниже приведен код, который не может заставить его работать.
DECLARE BinaryContent image
SET @BinaryContent=(SELECT BulkColumn FROM OPENROWSET(BULK N'C:\mydoc.docx', SINGLE_BLOB) blob
EXEC [dbo].[InsertWordDocument]
@Id = NEWID,
@Name = N'DocName',
@Description = N'DescriptionToChange',
@BinaryColumn =@BinaryContent
Как я могу заставить работать выше?
Большое спасибо.
1 ответ
Используйте varbinary(max) вместо изображения. Переменная varbinary(max) может быть передана в качестве значения параметра изображения.
Типы данных ntext, text и image устарели и будут удалены в следующей версии SQL Server.