Re: List of encodings

From: Igor Korot <ikorot01(at)gmail(dot)com>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "pgsql-generallists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: List of encodings
Date: 2026-04-19 22:09:34
Message-ID: CA+FnnTwPJL0vFWh7CgNpp_U9W2edPtv0+sPQkWS2xK=wRytaog@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi, ALL,

My question comes from the fact that "Character Set", LC_COLLATE and
LC_CTYPE can be
used here: https://www.postgresql.org/docs/18/sql-createdatabase.html
However its a little bit confusing.

The character set should define the collate and the CType things. But
according to the docs
it looks like its vice versa.
Also, there is no reference on where do I get the corresponding values
for LC_COLLATE and LC_CTYPE.

Thank you,

On Sun, Apr 19, 2026 at 3:27 PM Igor Korot <ikorot01(at)gmail(dot)com> wrote:
>
> Hi, David,
>
> On Sat, Apr 18, 2026 at 2:19 AM David G. Johnston
> <david(dot)g(dot)johnston(at)gmail(dot)com> wrote:
> >
> > On Friday, April 17, 2026, Igor Korot <ikorot01(at)gmail(dot)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...
>
> 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.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Igor Korot 2026-04-20 00:19:15 Re: List of encodings
Previous Message Adrian Klaver 2026-04-19 21:21:22 Re: List of encodings