【发布时间】:2019-11-22 23:22:55
【问题描述】:
我正在尝试使用 PANDAS 从 ORACLE 读取数据:
pd.read_sql(sql, myORACLEinfo)
其中 sql 是一条选择语句
我不拥有 ORACLE 表,也不能更改表日期。
pd.read_sql 正在返回此错误:
refresh 'charmap' codec can't decode byte 0x81 in position 1101:
character maps to <undefined>
有没有办法逃避/忽略这个错误。
我尝试在炼金术 create_engine 设置中添加:encoding='iso-8859-1',
假设 ORACLE 的默认编码是iso-8859-1,但这并没有帮助
【问题讨论】:
-
试试这个 pd.read_sql_query(sql,myORACLEinfo)
-
你可以看看this link
-
您使用哪个接口连接?我更喜欢
cx_Oracle.connect,它适用于我使用 Python 3.x 的默认编码。 -
Oracle DB 中使用了什么字符集:
select * from nls_database_parameters where parameter='NLS_CHARACTERSET'? -
嗨 MaxU。感谢您的 QRY。我运行它并得到'AL32UTF8'。我不是 DBA,无法控制设置。
标签: sql python-3.x oracle pandas sqlalchemy