Thanks, Albe, I had checked this, too, and it was ok. I already posted the solution to the board. It was an error due
toan incorrect conversion between an object-instance and a char. It works now.
Am 22.03.2012 um 12:50 schrieb Albe Laurenz:
> Alexander Reichstadt wrote:
>> I need to be able to store special chars, German Umlaute, in my tables. This works when using
>> pgPHPAdmin to store the same value to the same field. But when using the c-library it doesn't, fields
>> stored are garbled.
>>
>> I checked using \l to see what encoding the database is which is UTF8, UTF8 is what's required.
>>
>> List of databases
>> Name | Owner | Encoding | Collation | Ctype | Access privileges
>> -----------+----------+----------+-----------+-------+-----------------------
>> MyDB | postgres | UTF8 | C | C |
>> alltypes | postgres | UTF8 | de_DE | C |
>> postgres | postgres | UTF8 | C | C |
>> template0 | postgres | UTF8 | C | C | =c/postgres +
>> | | | | | postgres=CTc/postgres
>> template1 | postgres | UTF8 | C | C | =c/postgres +
>> | | | | | postgres=CTc/postgres
>>
>>
>> As a way to store things I use PGSQLKit, which in turn uses
>>
>> const char *cString = [sql cStringUsingEncoding:defaultEncoding];
>> if (cString == NULL)
>>
>> res = PQexec(pgconn, cString);
>>
>> to store things. The defaultEncoding I also changed explicitly from defaultEncoding to UTF8 to try,
>> but got the same result. As far as I can see this is not an error on part of the PGSQLKit.
>>
>>
>> From what I read there is no table specific encoding.
>>
>> The collation is set to C, but that's something only relevant to sorting as far s I understand.
>>
>> So, I am at a loss as to where things go wrong.
>>
>> Any ideas?
>
> I know nothing about PGSQLKit, but you should check what client_encoding is set to.
> If it is set to something else than UTF8, say for example LATIN1, then PostgreSQL
> will happily interpret the bytes in your UTF8 string as LATIN1 and convert them
> to UTF8, resulting in things like 'schöne ScheiÃ\u009Fe'.
>
> Yours,
> Laurenz Albe
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general