【发布时间】:2017-11-28 10:59:38
【问题描述】:
我使用pandas 从 Vertica 数据库读取数据:
pd.read_sql(query, self._conn)
但它失败了
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 1: invalid continuation byte。
其他查询不会失败,因此问题在此查询的某个特定列中。
我需要所有数据 - 我该怎么办?我也可以在 Vertica 中进行更改,但我无法更改表格值...
附:这就是我为 Vertica 创建连接的方式:
conn_info = url2vertica(url)
conn_info["read_timeout"] = 2400
conn_info["ssl"] = False
vrt = vertica_python.connect(**conn_info)
【问题讨论】:
-
我认为您需要将一些编码参数传递给您
connect函数。像charset='utf8'或类似的东西。我认为它需要匹配您数据库的编码,因为它显然不是“utf-8”。 -
@jeffery_the_wind,是的,我尝试做的第一件事是在某处明确设置“utf-16”,但
read_sql没有此接口
标签: python database pandas vertica