Determine Client Encoding

Started by Leonardo M. Raméabout 12 years ago3 messagesgeneral
Jump to latest
#1Leonardo M. Ramé
l.rame@griensu.com

Hi, we found characters with different enconding in our database. As our
system is accessed by many PCs I would like to know if it's possible to
know the encoding of each connection, without going to each PC to check
its connection string.

Regards,
--
Leonardo M. Ram�
Medical IT - Griensu S.A.
Av. Col�n 636 - Piso 8 Of. A
X5000EPT -- C�rdoba
Tel.: +54(351)4246924 +54(351)4247788 +54(351)4247979 int. 19
Cel.: +54 9 (011) 40871877

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Leonardo M. Ramé (#1)
Re: Determine Client Encoding

Leonardo =?iso-8859-1?Q?M=2E_Ram=E9?= <l.rame@griensu.com> writes:

Hi, we found characters with different enconding in our database. As our
system is accessed by many PCs I would like to know if it's possible to
know the encoding of each connection, without going to each PC to check
its connection string.

If you mean can one session identify the client_encoding of another
session, no; that information isn't exposed anyplace. Within a session,
you can of course use "show client_encoding" or various equivalent
syntaxes.

Note that when you have encoding problems, as often as not the issue
is that the data the client is sending isn't really in the encoding
its client_encoding setting claims. So even if you could find that
out remotely, it probably wouldn't help localize the issue very well.

regards, tom lane

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3Leonardo M. Ramé
l.rame@griensu.com
In reply to: Tom Lane (#2)
Re: Determine Client Encoding

On 2014-02-26 09:48:12 -0500, Tom Lane wrote:

Leonardo =?iso-8859-1?Q?M=2E_Ram=E9?= <l.rame@griensu.com> writes:

Hi, we found characters with different enconding in our database. As our
system is accessed by many PCs I would like to know if it's possible to
know the encoding of each connection, without going to each PC to check
its connection string.

If you mean can one session identify the client_encoding of another
session, no; that information isn't exposed anyplace. Within a session,
you can of course use "show client_encoding" or various equivalent
syntaxes.

Note that when you have encoding problems, as often as not the issue
is that the data the client is sending isn't really in the encoding
its client_encoding setting claims. So even if you could find that
out remotely, it probably wouldn't help localize the issue very well.

regards, tom lane

Thanks Tom, let me try to understand what you said.

For example if client_encoding is set to "win1252", but the user does a
copy-paste from MsWord (usually they do this), characters could have
been sent in utf8 ?.

If this is the case, the insert/update is done, but cannot be read from
another client. Right?.

Regards,
--
Leonardo M. Ram�
Medical IT - Griensu S.A.
Av. Col�n 636 - Piso 8 Of. A
X5000EPT -- C�rdoba
Tel.: +54(351)4246924 +54(351)4247788 +54(351)4247979 int. 19
Cel.: +54 9 (011) 40871877

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general