Re: Please help - libpq API - Mailing list pgsql-admin

From Alvaro Herrera
Subject Re: Please help - libpq API
Date
Msg-id 20050908132544.GC12971@surnet.cl
Whole thread Raw
In response to Please help - libpq API  ("Pradeepkumar, Pyatalo (IE10)" <Pradeepkumar.Pyatalo@honeywell.com>)
Responses Re: Please help - libpq API
List pgsql-admin
On Wed, Sep 07, 2005 at 11:40:57PM -0700, Pradeepkumar, Pyatalo (IE10) wrote:

> I have already posted my query regarding libpq functions and wide character
> support. Pls somebody help me. I am using libpq API functions in my C code
> to do operations on the database. But the problem I m facing is API
> functions like PQexec() etc....accept only char * .... but as part of
> localization, the queries I want to executed contain chinese characters
> which are multibytes. So the queries I want to execute are in wchar_t *
> format and PQ exec() accepts only char *. Is there any alternate way to
> execute queries having wide characters.

I think you could be using PQexecParams() and passing your wide-char
strings as binary parameters somehow.  I don't really know if this will
work or not, but it may give you an idea.  But note below:

> Even if somehow if I convert wchar_t *  to char * and provide it to
> Postgres, how will it differentiate between chinese characters and normal
> characters ??

Please note that any string you pass from the client will be interpreted
using the client_encoding setting.  So maybe what you have to do is just
set client_encoding to the encoding that the strings are encoded in.  If
you choose the wrong client_encoding, the server may recode the
characters inappropiately, or not at all, and thus insert wrong data.

Please see the documentation.

--
Alvaro Herrera -- Valdivia, Chile         Architect, www.EnterpriseDB.com
"When the proper man does nothing (wu-wei),
his thought is felt ten thousand miles." (Lao Tse)

pgsql-admin by date:

Previous
From: Michael Fuhr
Date:
Subject: Re: Relationship beween sequences (serial) and tables
Next
From: Alvaro Herrera
Date:
Subject: Re: pg_dump error... Follow up