PostgreSQL varchar can store Unicode with suitable database and client encodings. My example stores ЯНВАРЬ, the Russian word for January.

SHOW server_encoding;
SHOW client_encoding;
CREATE TEMP TABLE testing1 (col varchar(100));
INSERT INTO testing1 (col) VALUES ('ЯНВАРЬ');
SELECT col FROM testing1;
DROP TABLE testing1;
Use UTF8 and compatible client encoding for broadly multilingual data. A character type alone can’t make every encoding support every character. SQL_ASCII is not a substitute for correct Unicode handling.
SQL Server nvarchar and nchar remain straightforward Unicode choices. SQL Server 2019 also supports UTF-8 collations with varchar. My earlier comparison therefore needed qualification. Check client encoding, literals and collation in either product.
This PostgreSQL example uses a temporary table. It leaves no permanent testing object. The multilingual SQL Server article and PostgreSQL learning resources provide additional context.
Reference: PostgreSQL character-set support.
Related reading
- SQL SERVER – Storing Data in Hindi, Chinese, Gujarati, and Tamil (or any other) Language in the Same Table
- PostgreSQL – Learn Online in a Single Day – PostgreSQL Learning Path
- POSTGRESQL – How to Create a Function? – How to Declare Local Variable
- SQL – Difference between != and <> Operator used for NOT EQUAL TO Operation
A character type is not a complete encoding configuration, it is one part of preserving multilingual text.
Published by Pinal Dave on SQLAuthority. More of my work at pinaldave.com.
Discover more from SQL Authority with Pinal Dave
Subscribe to get the latest posts sent to your email.




