使用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
如何完成上述工作?
非常感谢。
答案 0 :(得分:15)
使用varbinary(max)而不是image。 varbinary(max)变量可以作为图像参数的值传递。
不推荐使用ntext,text和image数据类型,将在SQL Server的未来版本中将其删除。