SqlAlchemy无法找到记录

时间:2016-08-12 03:40:02

标签: python sqlalchemy flask-sqlalchemy

我有一个名为DR的表格,其中包含dag_idexecution_daterun_id列。我想找到一张我知道存在于表格中的特定记录。

在我的单元测试中,我在表中创建了一个条目,然后再次尝试找到它。

tmp = session.query(DR).filter(DR.dag_id == self.dag_id).first()

print(self.dag_id == tmp.dag_id) 
print(self.execution_date == tmp.execution_date)
print(self.run_id == tmp.run_id)

所有三个print语句都打印为true,但是当执行以下查询时,没有找到任何记录:

session.query(DR).filter(
    DR.dag_id == self.dag_id,
    DR.execution_date == self.execution_date,
    DR.run_id == self.run_id
).first()

有谁知道为什么会这样?

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否尝试过以下查询?

session.query(DR).filter(
    DR.dag_id == self.dag_id,
    DR.run_id == self.run_id
).first()

如果可行,则问题可能是python datetime等值的计算与数据库日期时间相等。