如何插入十六进制值,如\ x320000000d2f2100 以转义格式转换为bytea字段?
bytea_output设置设置为转义
答案 0 :(得分:3)
bytea_output
设置与服务器解释bytea 的方式无关,只与发送到客户端的方式有关。
是否要插入文字字符串\x320000000d2f2100
(如7位ascii),即生成字节0x5c 0x78 0x33 0x32 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x64 0x32 0x66 0x32 0x31 0x30 0x30
?
如果是这样,请转义反斜杠,如escape
格式bytea文字的语法中所述。
regress=> SELECT BYTEA '\\x320000000d2f2100';
bytea
----------------------------------------
\x5c7833323030303030303064326632313030
(1 row)
是否要插入字节0x32 0x00 0x00 0x00 0x0d 0x2f 0x21 0x00
,即十六进制值?如果是这样,不转义反斜杠。 bytea_output
的设置无关紧要。
regress=> SELECT BYTEA '\x320000000d2f2100';
bytea
--------------------
\x320000000d2f2100
(1 row)