PostgreSQL - ECPG / C - 主机变量UTF-8解码

时间:2014-04-18 07:20:55

标签: c postgresql utf-8 ecpg

我有一个UTF8编码数据库。 我正在使用ECPG - PROGRAM C.

当我使用EXEC SQL

获取数据记录集时
 EXEC SQL DECLARE cur_myTable CURSOR FOR
     SELECT code,
            label
     INTO  :hv_cod,
           :hv_label
     FROM  myTable

但是我在pgc文件中打印数据

printf("\n libellé => %s", :hv_label ), I get:

我明白了:

libellé => télé.

是否可以在程序C中将主机变量UTF8解码为ISO-8859-1? 可以在.pgc文件中说:Postgres我想要UTF8解码值吗?

谢谢

1 个答案:

答案 0 :(得分:4)

  

是否可以在程序C中将主机变量UTF8解码为ISO-8859-1?

当然,很多图书馆都这么做。例如,请查看libiconv

  

是否可以在.pgc文件中说:Postgres我想要UTF8解码值?

中平凡。 Set client_encodingiso-8859-1或您的本地编码。你可以do this with libpq functions; ecpg可能有自己的等价物,不确定。