admin管理员组

文章数量:1794759

[cx

[cx

目标:将dataframe直接批量插入Oracle数据库

语句:

# coding=utf-8
#设置语言环境
import os
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'
#设置数据库链接
import cx_Oracle
from sqlalchemy import create_engineconn_string='oracle+cx_oracle://user:pass@host:port/dbname'
engine = create_engine(conn_string, echo=False)
df.to_sql('users', con=engine)
engine.execute("SELECT * FROM users").fetchall()
[(0, 'User 1'), (1, 'User 2'), (2, 'User 3')]
------------------------------------------------------------------------
.DataFrame.to_sql.html

报错:expecting string or bytes object

原因:仔细研究后发现,是相同的变量前后的数据类型不同,比如在刚开始是Int类型的,后面写着写着忘了,又赋了string类型的数据,相同的一列却出现了不同的数据类型,所以在插入时出现意外的字符串或变量

解决:仔细检查,前后数据类型统一,即可插入

本文标签: Cx