【发布时间】:2022-08-19 05:48:05
【问题描述】:
我有一个在 PL/SQL 中完美运行的查询,我要求用户输入一个日期,它说:
select * from X (X is a table in a database called DATABASE which I am connected to)
where date_=TO_DATE(\'&Enter_Date\',\'YYYY-MM-DD\')
我尝试使用以下方法在 Python 和 cx_Oracle 中复制它:
import cx_Oracle
db2 = cx_Oracle.connect(\'/@DATABASE\')
positions = \"\"\"
SELECT * FROM X
WHERE date_=TO_DATE(\'&Enter_Date\',\'YYYY-MM-DD\')
\"\"\"
我得到一个错误。 :ORA-01841:(完整)年份必须介于 -4713 和 +9999 之间,而不是 0。如果我实际上在日期中编码,例如 \'2022-06-30\',它可以工作,但我希望用户是可以输入。
感谢您能给我的任何帮助。 谢谢,