Sql server Sqlserver varbinary数据要选择为varchar而不截断

Sql server Sqlserver varbinary数据要选择为varchar而不截断,sql-server,binary,Sql Server,Binary,我正在运行以下程序来检索转换后的二进制数据,然后将输出保存到一个文件中,它将被截断 SELECT cast([BINARY_VALUE] as varchar(max)) BLOB_VALUE FROM [PROD3].[DOMAIN].[BLOBS] WHERE OBJECT_ID = 881462 如何使用sqlserver将所有转换后的二进制数据保存到文件中?请检查以下问题: TL;DR:您不应使用强制转换,而应转换: SELECT CONVERT(varchar(max), B

我正在运行以下程序来检索转换后的二进制数据,然后将输出保存到一个文件中,它将被截断

SELECT 
cast([BINARY_VALUE] as varchar(max)) BLOB_VALUE 
FROM [PROD3].[DOMAIN].[BLOBS]
WHERE OBJECT_ID = 881462

如何使用sqlserver将所有转换后的二进制数据保存到文件中?

请检查以下问题:

TL;DR:您不应使用强制转换,而应转换:

SELECT 
CONVERT(varchar(max), BINARY_VALUE,2) as BLOB_VALUE 
FROM [PROD3].[DOMAIN].[BLOBS]
WHERE OBJECT_ID = 881462

请注意样式参数2的使用。

是否尝试使用bcp命令?它应该可以正常工作。

选择CONVERT(VARCHAR(max),[BINARY_VALUE],2)作为[PROD3].[DOMAIN].[BLOBS]中的BLOB_值,其中上面的OBJECT_ID=881462起作用,但没有转换为可读字符串!!??尝试转换为NVARCHAR而不是VARCHAR:
从[PROD3].[DOMAIN].[BLOBS]中选择CONVERT(NVARCHAR(max),BINARY_VALUE,2)作为BLOB_值,其中OBJECT_ID=881462
Nah。。。同样的结果。CASTworks,CONVERT似乎没有,输出有多大。。。不我不知道BCP-它是内置的吗?这是SQL Server附带的区分大小写的命令。如果您使用的是windows身份验证,则可以使用-T开关:下面是一个示例。c:\>bcp“”查询c:\temp\data.txt-c-T-S SQLSERVERNAME