You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL Server 2019中将image列内容转换为文本

解决SQL Server 2019中image列转文本的问题

image是SQL Server的旧版二进制数据类型,不允许直接转换为字符串类型,必须先将其转换为现代的VARBINARY(MAX)类型,再转成文本。以下是可行的方案:

方案1:转换为Unicode文本(NVARCHAR(MAX))

如果存储的是Unicode编码的文本,使用以下语句:

SELECT CAST(CONVERT(VARBINARY(MAX), PAYLOAD) AS NVARCHAR(MAX)) FROM MY_TABLE

方案2:转换为ASCII/UTF-8文本(VARCHAR(MAX))

如果存储的是ASCII或UTF-8编码的文本,使用基础转换:

SELECT CAST(CONVERT(VARBINARY(MAX), PAYLOAD) AS VARCHAR(MAX)) FROM MY_TABLE

如果明确是UTF-8编码,也可以指定编码格式确保转换准确:

SELECT CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), PAYLOAD), 65001) FROM MY_TABLE

注意事项

  • 如果不确定文本编码,可以先尝试方案1,若出现乱码再切换到方案2。
  • image类型已被SQL Server弃用,建议后续将列类型修改为VARBINARY(MAX),避免类似转换问题。

内容的提问来源于stack exchange,提问作者stromanneke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 13:44:56