2017-08-08 72 views
2

文本我使用SQL服务器 - 2008年转换VARBINARY RTF BLOB在MS SQL

Column Datatype - VarBinary 

RTF文件进行压缩并保存到这个varbinary列。

现在如何使用SQL访问和查看RTF文件中的数据?

它的回报是:㠰た㠴弰巎楛㵤㠵㜸ㄲ㠴.

示例代码尝试在这里:

http://rextester.com/YOFHK34016

任何解决这个。 在2008解压缩和压缩功能不起作用。 我怎么能得到RTF文件,因为它是文本。

+0

使用什么样的压缩? –

+0

@ LasseV.Karlsen压缩函数使用。如何插入数据插入我们不知道。如果我选择top 1 *将该列转换为varchar,那么它会重置放在查询中的二进制代码 –

回答

-1

这对我的作品:

select convert(varchar(max),convert(varbinary(max),bv.value)) from blobValue bv 

而不是使用nvarchar的尝试使用VARCHAR。 但我shuld说,这将返回RTF文本格式化,像:

"{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil MS Sans Serif;}{\f1\fswiss\fcharset0 Arial;}" 

从它那里得到实际的文本,您可以使用.NET动态库将其转换。 您可以将.net dll添加到您的数据库,并从Sql脚本中调用它的函数。更详细的说明:Call dll function from sql stored procedure using the current connection

+0

qury现在不工作。我已经使用nvarchar和varchar仍然是相同的错误。我如何使用.NET DLL?你可以添加更多的细节或演示? –