6 ответов:
из командной строки:
psql my_database -c 'SHOW SERVER_ENCODING'
внутри
psql, SQL IDE или API:SHOW SERVER_ENCODING
Способ 1:
если вы уже вошли на сервер БД, просто скопируйте и вставьте это.
SHOW SERVER_ENCODING;результат:
server_encoding ----------------- UTF8для кодирования клиент :
SHOW CLIENT_ENCODING;Способ 2:
опять же, если вы уже вошли в систему, используйте это, чтобы получить результат на основе списка
\l
программное решение:
SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'yourdb';
Если вы хотите получить кодировки базы данных:
psql -U postgres -h somehost --listвы увидите что-то вроде:
List of databases Name | Owner | Encoding ------------------------+----------+---------- db1 | postgres | UTF8
tl; dr
SELECT character_set_name FROM information_schema.character_sets ;стандартным способом:
information_schemaС SQL-стандартная схема
information_schemaприсутствует в каждой базе данных / каталоге, используйте определенное представление с именемcharacter_sets. Этот подход должен быть переносимым через все стандартные системы баз данных.SELECT * FROM information_schema.character_sets ;несмотря на то, что имя является множественным, он показывает только одну строку, сообщая о текущем база данных / каталог.
третья колонка
character_set_name:имя набора символов, реализованного в настоящее время как отображение имени кодировки базы данных
потому что есть более чем один способ освежевать кошку:
psql -lпоказывает все имена баз данных, кодирования и многое другое.

Comments