Character encoding 不从VARCHAR字段显示带有Vertica重音字符的表格

Character encoding 不从VARCHAR字段显示带有Vertica重音字符的表格,character-encoding,vertica,tableau-api,Character Encoding,Vertica,Tableau Api,我已经从Tableau创建了到Vertica表的数据连接,并且在行中有一个“姓氏1”字段。该字段在Vertica中以VARCHAR的形式存在,如果进行选择,我可以在命令行中看到重音字符,这没有问题 问题是,在Tableau中,这些字段没有正确表示,我无法找到任何方法来更改Tabelau中的字段编码以识别它们 有人知道怎么解决这个问题吗 下面是在命令行中选择Vertica的示例,以及在Tableau中显示的内容: surname1 --------------- Mérida Fernández

我已经从Tableau创建了到Vertica表的数据连接,并且在行中有一个“姓氏1”字段。该字段在Vertica中以VARCHAR的形式存在,如果进行选择,我可以在命令行中看到重音字符,这没有问题

问题是,在Tableau中,这些字段没有正确表示,我无法找到任何方法来更改Tabelau中的字段编码以识别它们

有人知道怎么解决这个问题吗

下面是在命令行中选择Vertica的示例,以及在Tableau中显示的内容:

surname1
---------------
Mérida
Fernández
Villadóniga
Muñoz
López

提前感谢,


詹姆斯

留下这个,以防万一将来对任何人都有帮助:

问题的原因是Vertica数据库由MySQL数据库通过mysqli连接提供。此连接字符编码配置为latin1/8859-1,而Vertica配置为utf-8

由于我用来从Windows访问Vertica的Putty窗口也是在latin1/8859-1下配置的,因此问题进一步被混淆了,这有效地使数据在utf-8下未正确存储在Vertica中这一事实变得不可见

为了解决这个问题,我重新配置了为vertica连接提供数据的mysqli,使用utf-8编码,代码如下:

$mysqli->set_charset("utf8");
注意,为了找出字符集首先是拉丁1,我使用了以下方法:

echo $CMySQLI->character_set_name();
总之,如果您发现Tableau中存在重音字符问题,并且通过putty访问数据库,请确保putty和DB之间的字符编码对齐,以便不会以这种方式掩盖错误

问候,

詹姆斯