Re: List of encodings
Adrian Klaver <adrian.klaver@aklaver.com>
From: Adrian Klaver <adrian.klaver@aklaver.com>
To: Igor Korot <ikorot01@gmail.com>,
"David G. Johnston" <david.g.johnston@gmail.com>
Cc: "pgsql-generallists.postgresql.org" <pgsql-general@lists.postgresql.org>
Date: 2026-04-19T21:21:22Z
Lists: pgsql-general
On 4/19/26 1:27 PM, Igor Korot wrote: > Hi, David, > > On Sat, Apr 18, 2026 at 2:19 AM David G. Johnston > <david.g.johnston@gmail.com> wrote: >> >> On Friday, April 17, 2026, Igor Korot <ikorot01@gmail.com> wrote: >>> >>> Hi, ALL, >>> Does the list shown in >>> https://www.postgresql.org/docs/current/multibyte.html#MULTIBYTE-CHARSET-SUPPORTED >>> stored somewhere in INFORMATION_SCHEMA? >> >> >> This wouldn’t be under the purview of information schema. You can find pg-specific pieces though: >> >> https://www.postgresql.org/docs/current/catalog-pg-conversion.html >> >> Note the function used to convert ids to names. > > Tried the following query: > > SELECT conname AS name, pg_encoding_to_char( conforencoding ) AS > encoding, condefault AS default FROM pg_conversion ORDER BY encoding; > > and got following results (for simplicity I will post only couple of rows): > > big5_to_utf8 | BIG5 | t > big5_to_euc_tw | BIG5 | t > big5_to_mic | BIG5 | t > euc_cn_to_mic | EUC_CN | t > euc_cn_to_utf8 | EUC_CN | t > euc_jis_2004_to_shift_jis_2004 | EUC_JIS_2004 | t > euc_jis_2004_to_utf8 | EUC_JIS_2004 | t > euc_jp_to_mic | EUC_JP | t > euc_jp_to_sjis | EUC_JP | t > euc_jp_to_utf8 | EUC_JP | t > euc_kr_to_utf8 | EUC_KR | t > euc_kr_to_mic | EUC_KR | t > euc_tw_to_big5 | EUC_TW | t > euc_tw_to_utf8 | EUC_TW | t > euc_tw_to_mic | EUC_TW | t > > What I noticed is that all encodings are default, as they all have 't' > in the last column. > > It's a little confusing... Not if you read the docs: https://www.postgresql.org/docs/current/catalog-pg-conversion.html "The catalog pg_conversion describes encoding conversion functions. See CREATE CONVERSION for more information." https://www.postgresql.org/docs/current/sql-createconversion.html "Conversions that are marked DEFAULT can be used for automatic encoding conversion between client and server. To support that usage, two conversions, from encoding A to B and from encoding B to A, must be defined." > > Thx for the help. > >> >>> >>> >>> Or is it hard coded inside the PostgreSQL codebase? >> >> >> Yes. Doesn’t preclude exposing it via SQL but we don’t do so directly. >> >> David J. > > -- Adrian Klaver adrian.klaver@aklaver.com