Hi,
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?
Thanks