-
Couldn't load subscription status.
- Fork 93
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Currently naive datetime(s) are returned when column type is TIMESTAMP WITH TIME ZONE.
Issue #274 can be split into two tasks, one is supporting named time zones as per issue #20. The other task is supporting timestamps having only the offset from UTC.
I have no knowledge of Cython so I cannot create a PR but what I would try is:
--- a/src/oracledb/impl/base/buffer.pyx +++ b/src/oracledb/impl/base/buffer.pyx @@ -354,7 +354,10 @@ cdef class Buffer: tz_minute = ptr[12] - TZ_MINUTE_OFFSET if tz_hour != 0 or tz_minute != 0: seconds = tz_hour * 3600 + tz_minute * 60 - value += cydatetime.timedelta_new(0, seconds, 0) + tz_delta = cydatetime.timedelta_new(0, seconds, 0) + tz_utc = cydatetime.get_utc() + tz = cydatetime.timezone_new(tz_delta) + return value.replace(tzinfo=tz_utc).astimezone(tz) return value cdef object parse_interval_ds(self, const uint8_t* ptr):nmoreaud
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request