在SQL Server 2005中检索作为字符串存储为图像的数据

Luc*_*ke2 5 sql-server sql-server-2005

我需要在SQL Server中检索存储为图像数据的xml文件.

我正在使用此查询 -

select 
    convert(varchar, convert(binary, zd.validcontent)) 
from 
    zonedata zd
join 
    contentitem ci on zd.itemid = ci.itemid
where 
    id = @dpathid 
Run Code Online (Sandbox Code Playgroud)

我得到文本,但结果只返回xml文件的一小部分 -

<?xml version="1.0" encoding="
Run Code Online (Sandbox Code Playgroud)

请帮忙.谢谢.

Dev*_*art 21

这可能对你有所帮助 -

SELECT CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), zd.validcontent))
FROM zonedata zd
JOIN contentitem ci ON zd.itemid = ci.itemid
WHERE ID = @dpathid
Run Code Online (Sandbox Code Playgroud)


Dam*_*ver 8

char并且varchar:

char [(n)]

varchar [(n | max)]

Ñ在数据定义或变量声明语句中指定,则缺省长度为1.当Ñ使用CAST和CONVERT函数当未指定,则缺省长度是30.

所以,请指定一个合适的长度(例如max@ Devart的答案,或任何更合适的值)