【发布时间】:2020-04-01 07:31:39
【问题描述】:
一个 PostgreSQL 表有一个 bytea 类型的列。此列中插入了一些整数和字符串值。
有没有办法使用 psql 取回原始整数/字符串值?
bitnami_airflow=> select value from xcom where key='warehouse_ids_count' limit 5;
value
--------------------
\x80034d926b2e
\x80034a74e9dd002e
\x80034dc6072e
\x80034a6c1701002e
\x80034d392d2e
(5 rows)
【问题讨论】:
-
能不能也加几条insert语句?另外,永远不要发布代码卡盘的图像,而是将代码块本身作为
text。 -
另外,数据的编码是什么? Hex 80 看起来不像是任何编码中的数字。
-
psql的
SHOW SERVER_ENCODING的输出是UTF8。 -
尝试读取气流表 xcom,插入的值是简单的 int 和字符串,例如。 111、“error_found”、“s3_location”等
-
@AmritJangid 这看起来像pickled python objects。从理论上讲,您可以对格式进行逆向工程并在 PL/SQL 中重新实现 unpickling,但我建议改用 Python。
标签: postgresql pickle plpgsql