Thanks for the PR. I've taken the opportunity to look deeper into Firebird's handling of character set names and aliases; the Firebird source code provides a canonical reference (see: https://github.com/FirebirdSQL/firebird/blob/master/src/jrd/IntlManager.cpp#L100 ) which supports my original assertion that there is quite a good overlap between PostgreSQL character set names and those supported by Firebird. There is a small subset where no mapping exists; I have identified these as:
SQL_ASCII → NONE
ISO_8859_5 → ISO8859_5
ISO_8859_6 → ISO8859_6
ISO_8859_7 → ISO8859_7
ISO_8859_8 → ISO8859_8
WIN866 → DOS866
EUC_JP → EUCJ_0208 (with caveats)
and commited an update supporting these (96e1625).
Note that PostgreSQL supports some character sets (e.g. SJIS) as client encodings, but not as server character sets, so there's no need to consider those at all.
Hi
Thanks for the PR. I've taken the opportunity to look deeper into Firebird's handling of character set names and aliases; the Firebird source code provides a canonical reference (see: https://github.com/FirebirdSQL/firebird/blob/master/src/jrd/IntlManager.cpp#L100 ) which supports my original assertion that there is quite a good overlap between PostgreSQL character set names and those supported by Firebird. There is a small subset where no mapping exists; I have identified these as:
SQL_ASCII
→NONE
ISO_8859_5
→ISO8859_5
ISO_8859_6
→ISO8859_6
ISO_8859_7
→ISO8859_7
ISO_8859_8
→ISO8859_8
WIN866
→DOS866
EUC_JP
→EUCJ_0208
(with caveats)and commited an update supporting these (96e1625).
Note that PostgreSQL supports some character sets (e.g.
SJIS
) as client encodings, but not as server character sets, so there's no need to consider those at all.I'll update the documentation separately.
Thanks once again.