将熊猫数据框写入SQL Developer时出现问题

时间:2020-07-01 10:29:40

标签: python pandas oracle oracle-sqldeveloper

我一直在尝试从jupyter笔记本(使用to_sql)向SQL开发人员编写熊猫数据框。我做了以下事情:

const auto nds = v | views::enumerate 
    | views::filter([](auto p){ return p.second; })
    | views::keys
    | to<std::vector<int>>;

执行后,出现此错误:

“ UnicodeEncodeError:'charmap'编解码器无法对位置3-12中的字符进行编码:字符映射为未定义”。

当我检查我的Sql开发人员时,发现创建的sample_table具有完整的Panda Dataframe标题,但没有行或行内容。

我经历了以前的回答,希望能找到解决方案。但是,我的问题依旧,没有太大帮助。

任何人都可以帮助我解决此问题。我很困惑这里出了什么问题。

2 个答案:

答案 0 :(得分:0)

如果您使用的是cx_Oracle 7或更早版本,则在连接时将编码设置为UTF-8:

来自the SQLAlchemy doc

engine = create_engine("oracle+cx_oracle://scott:tiger@oracle1120/?encoding=UTF-8&nencoding=UTF-8")

如果您已升级到cx_Oracle 8,则默认值已经是UTF-8。

答案 1 :(得分:0)

您的数据可能具有大于ASCII(128)的值,请尝试以下操作,这可能会有所帮助。 os.environ ['NLS_LANG'] ='AMERICAN_AMERICA.AL32UTF8'

谢谢