【发布时间】:2016-07-21 21:57:35
【问题描述】:
我有一个较小的数据框。当我尝试将数据框写入数据库时,我不断收到错误消息。我尝试删除一些数据,并且能够成功输入 3 个条目,但第 4 个条目失败。让我更清楚地展示正在发生的事情。
我拿了一个数据框:
good_asmnt = ('LCC1', 'OQC1', 'QLC1' )
tiny_split = this_split [ this_split [ 'COURSE_NUMBER' ].isin ( good_asmnt )]
tiny_split
给我:
-------------------------------
| | COURSE_NUMBER | bin_var |
-------------------------------
|0| LCC1 | 0 |
|1| OQC1 | 1 |
|2| QLC1 | 1 |
-------------------------------
然后我运行:
from sqlalchemy import create_engine
engine = create_engine('oracle://wgubi:w3d0stats@192.168.52.13:1522/BIWH')
tiny_split.to_sql('mdb_model_out', engine, if_exists='replace')
检查数据库表明该表存在正确的数据。
现在我添加一个条目:
good_asmnt = ('LCC1', 'OQC1', 'QLC1', 'MYC1' )
tiny_split = this_split [ this_split [ 'COURSE_NUMBER' ].isin ( good_asmnt )]
tiny_split
给我:
-------------------------------
| | COURSE_NUMBER | bin_var |
-------------------------------
|0| LCC1 | 0 |
|1| OQC1 | 1 |
|2| QLC1 | 1 |
|3| MYC1 | 0 |
-------------------------------
然后我运行:
from sqlalchemy import create_engine
engine = create_engine('oracle://wgubi:w3d0stats@192.168.52.13:1522/BIWH')
tiny_split.to_sql('mdb_model_out', engine, if_exists='replace')
并得到一个错误 -
TypeError:需要字符串、unicode 或缓冲区对象
在数据库中,表在那里,所有的数据都没有了。
我有 351 个条目要写入数据库,但不想一次移动 3 个。
【问题讨论】:
标签: python sql database oracle dataframe