【问题标题】:Convert SQL blob/bytea in dump to string in Python将转储中的 SQL blob/bytea 转换为 Python 中的字符串
【发布时间】:2018-01-09 16:57:17
【问题描述】:

我有一个包含 bytea 类型列的表的 pg_dump。它是一个长字符串,例如:\\x4e696365206d7573696361...

通常在 SQL 中我会使用一个简单的:

SELECT user_id,
       encode(text_column::bytea, 'escape')
FROM posts
LIMIT 10

这提供了原始文本。

如何在 Python 中进行转换?我一直在尝试.encode/.decode/base64encode 等,但没有运气。

【问题讨论】:

  • 你能提供一个字符串的例子和它的字节表示(例如\\xdeadbeaf == hello world)吗?
  • 示例:\x54657374 --> Test

标签: python postgresql character-encoding bytea


【解决方案1】:

好的,按照你的例子,它的简单hex 表示。

>>> '\\x48414e44203330'.lstrip('\\x').decode('hex')
'HAND 30'

【讨论】:

    猜你喜欢
    • 2012-08-24
    • 2013-06-28
    • 2019-09-24
    • 2021-01-29
    • 1970-01-01
    • 2020-01-19
    • 2017-07-07
    • 1970-01-01
    • 2013-08-07
    相关资源
    最近更新 更多