cx_oracle 返回or类型datetime
的列的实例,但这些 datetime 实例不知道时区。TIMESTAMP
TIMESTAMP WITH TIME ZONE
例如:
SELECT column_name, data_type FROM ALL_TAB_COLUMNS WHERE table_name = 'mytable';
column_name data_type
----------- ---------------------------
MYCOL TIMESTAMP(6) WITH TIME ZONE
如您所见,MYCOL 是一个可识别时区的 TIMESTAMP。我希望以下内容会返回一个包含 tzinfo 数据的 Python 日期时间对象。然而:
>>> cxoracle_cursor.execute("select mycol from mytable")
>>> row = cx_oracle_cursor.fetchone()
>>> row['mycol']
datetime.datetime(2011, 6, 15, 8, 30)
那个 datetime 对象不知道时区,所以我不能在我的应用程序中可靠地使用这个日期。
将此列作为时区感知的日期时间对象检索的最佳方法是什么?