encode(data
bytea
, format
text
)
将二进制数据编码成一个文本表达。支持的格式有:base64 、hex 、escape 。escape 将零字节和高位组字节转换为八进制序列(\ nnn )和双写的反斜线。 |
select encode('123456','base64'); 结果为: MTIzNDU2
遇到问题是数据库表中有一个字段为int4
select encode(字段,'base64'); 报错 SQL 错误 [42883]: 错误: 函数 encode(integer, unknown) 不存在¶ Hint: 没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换.¶ Position: 8
select encode(字段::text,'base64) 依旧报错
解决办法
select encode((字段::text)::bytea,'base64')