这是一个非常简单的问题,但它让我很难过。我正在使用Python,我可以成功地将整个DataFrame插入到我的Oracle表中,但是当我添加另一个cursor.execute
语句将其他变量添加到我的Oracle表中时,它会失败。
这就是我正在做的事情:
cursor = con.cursor()
exported_data = [tuple(x) for x in df_Quota.values]
sql_query = ("INSERT INTO ROUGHTABLE(species, date_posted, stock_id, pounds, money, sector_name, ask)" "VALUES (:1, :2, :3, :4, :5, 'NEFS 2', '1')")
year_command = ("INSERT INTO ROUGHTABLE(trade_year)" "VALUES (year)")
cursor.executemany(sql_query, exported_data)
cursor.execute(year_command)
con.commit()
cursor.close()
con.close()
它在cursor.execute(year_command)
行上失败,错误为cx_Oracle.DatabaseError: ORA-00984: column not allowed here
。 Google搜索显示此错误通常是由于“在VALUES子句中包含列名”........但我的Oracle表中没有名为“year”的列,所以我很困惑为什么它会失败
变量year
包含一年btw,在本例中为“2014”。
任何帮助揭示这个问题的人都将不胜感激。感谢。