ORACLE 中的表....SQL> desc mytable2 Name Null? Type ----------------------------------------- -------- ---------------------------- D DATE A NUMBER C NUMBERPandas 中的 DATAFRAME 具有以下數(shù)據(jù)date open high..........................2020-07-07 375.41 378.62我是 python 的新手,試圖將這些數(shù)據(jù)添加到表中。在向其中添加 DF 數(shù)據(jù)之前嘗試樣本數(shù)據(jù)測試。如果我使用 COMMENTED 插入,它會失敗,因為我將 STRING 傳遞到日期列 - 我試圖在傳遞給 Oracle 之前查看如何在 python 中將 STRING 轉(zhuǎn)換為 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貢獻(xiàn)1856條經(jīng)驗 獲得超5個贊
綁定值只能包含數(shù)據(jù),因此包含 SQL“to_date()”函數(shù)將不起作用。基本的解決方案是使用這樣的東西:
cursor.execute("insert into MyTable2 values (to_date(:D,'YYYY-MM-DD'), :A, :B)" , ['2020-12-12' ,15, 15]
您也可以設(shè)置默認(rèn)日期格式,或者只插入一個日期而不是日期的字符串表示形式。
您可以在cx_Oracle 文檔中找到有用的信息。
添加回答
舉報
0/150
提交
取消