Шпаргалка: извлечь текст из поля bytea (binary) в PostgreSQL

Cитуация: поле в таблице имеет тип bytea (бинарные данные), но вы точно знаете, что внутри него хранится обычный текст (например, из-за ошибки проектирования или legacy-системы).

НЕ используйте ::text — он покажет шестнадцатеричный код (\x48656C6C6F), а не исходный текст.

Т.е. пример выше не улучшит ситуацию, т.к. текст останется не читаемым.

Правильный способ — функция convert_from() с указанием кодировки:

Примеры наиболее распространенных кодировок

UTF-8Современные системы, веб, Linux (по умолчанию)convert_from(value, 'UTF8')
WIN1251Старые Windows-приложения, кириллица (1С, Access)convert_from(value, 'WIN1251')
KOI8Очень старые UNIX-системыconvert_from(value, 'KOI8')
LATIN1Западноевропейские языки (ISO-8859-1)convert_from(value, 'LATIN1')

Мало букафф? Читайте есчо !

Как узнать количество строк в PostgreSQL без COUNT(*)

Июль 27, 2026 г.

В повседневной работе с PostgreSQL иной раз возникает задача оценить или узнать точное число строк в таблице. Классический способ — SELECT COUNT(*) FROM table — работает, но для больших таблиц он может быть медленным, поскольку выполняет полное сканирование ...

Читать

Ошибка: cлишком много клиентов psql

Сентябрь 17, 2026 г.

В php пример этой выглядит как следующее сообщение:PDOException: SQLSTATE[08006] [7] connection to server at "127.0.0.1", port 5433 failed: извините, уже ...

Читать

Команды консоли PostgreSql

Апрель 18, 2017 г.

Небольшая шпаргалка по работе в консоли postgreSQL. Чтобы полноценно работать с консолью, лучше всего переключиться на супер-юзера базы данных. ...

Читать

Приоритет настроек в PostgreSQL

Сентябрь 17, 2026 г.

Есть чёткая иерархия, как PostgreSQL читает свои настройки. Порядок чтения конфигурации PostgreSQL при старте (и при reload) собирает итоговую ...

Читать
 

Комментарии к «Шпаргалка: извлечь текст из поля bytea (binary) в PostgreSQL»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: