为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Python 将 DATE 插入 Oracle 数据库

使用 Python 将 DATE 插入 Oracle 数据库

守着一只汪 2023-03-01 16:28:48
ORACLE 中的表....SQL> desc mytable2 Name                                      Null?    Type ----------------------------------------- -------- ---------------------------- D                                                  DATE A                                                  NUMBER C                                                  NUMBERPandas 中的 DATAFRAME 具有以下数据date    open    high..........................2020-07-07  375.41  378.62我是 python 的新手,试图将这些数据添加到表中。在向其中添加 DF 数据之前尝试样本数据测试。如果我使用 COMMENTED 插入,它会失败,因为我将 STRING 传递到日期列 - 我试图在传递给 Oracle 之前查看如何在 python 中将 STRING 转换为 DATE - 请告知。import cx_Oracleimport pandas as pdconnect=cx_Oracle.connect('astro/astro@10.0.0.145:1621/analytica')cursor=connect.cursor()#cursor.execute(" insert into TTTT values (:1, :2, :3, :4, :5, :6)", ['2020-10-10', 12,12,12,12,12]cursor.execute("insert into MyTable2 values (:D, :A, :B)" , [(to_date('2020-12-12','yyyy-mm-dd' ) ,15, 15])connect.commit()
查看完整描述

1 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

绑定值只能包含数据,因此包含 SQL“to_date()”函数将不起作用。基本的解决方案是使用这样的东西:

cursor.execute("insert into MyTable2 values (to_date(:D,'YYYY-MM-DD'), :A, :B)" , ['2020-12-12' ,15, 15]

您也可以设置默认日期格式,或者只插入一个日期而不是日期的字符串表示形式。

您可以在cx_Oracle 文档中找到有用的信息。


查看完整回答
反对 回复 2023-03-01
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号