如何比较 datetime.datetime 和 pyodbc.row 值



我正在尝试查看 Access 数据库中 DateRef 行中的值是否等于 Excell 单元格中的 datetime.datetime 值。无法让我思考如何将pyodbc.row转换为datetime.datetime。

In[18]:sheet['BL2'].value
Out[18]: datetime.datetime(2017, 12, 15, 0, 0)
In[21]type(sheet['BL2'].value)
Out[21]: datetime.datetime

In [17]: DateRef_aslist[-1]
In [17]: (datetime.datetime(2017, 12, 15, 0, 0), )
In [20]: type(DateRef_aslist[-1])
In [20]: Out[20]: pyodbc.Row
In [19]: DateRef_aslist[-1] == sheet['BL2'].value
Out[19]: False

Row是一个集合。 您的元素仅包含一个元素。 所以试试这个:

DateRef_aslist[-1][0] == sheet['BL2'].value

有时,当我编写选择一列的查询时,我认为游标将产生一个对象(而不是一个对象的集合)。 但这意味着当查询选择一列时,游标必须生成一种类型,当查询选择多个列时,游标必须生成另一种类型。

最终更容易记住它总是产生Row

最新更新