View Issue Details

IDProjectCategoryView StatusLast Update
0004261SymmetricDSBugpublic2020-02-14 08:10
ReporterpmarzulloAssigned To 
Prioritynormal 
Status newResolutionopen 
Product Version3.11.5 
Target Version3.11.6Fixed in Version 
Summary0004261: Oracle: Need to handle negative years or BC years
DescriptionOracle dialect needs to handle negative years, or BC years.

Conversion from timestamp to char for transport to target system:

select to_char(to_timestamp('-3546-02-13 12:00:00','SYYYY-MM-DD HH24:MI:SS'), 'SYYYY-MM-DD HH24:MI:SS') from dual;

select to_char(to_timestamp('-3546-02-13 12:00:00','SYYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS AD') from dual;

select to_char(to_timestamp('3546-02-13 12:00:00 BC','YYYY-MM-DD HH24:MI:SS BC'), 'SYYYY-MM-DD HH24:MI:SS') from dual;

select to_char(to_timestamp('3546-02-13 12:00:00 BC','YYYY-MM-DD HH24:MI:SS BC'), 'YYYY-MM-DD HH24:MI:SS AD') from dual;

The SYYYY means signed years.
The AD indicates BC or AD as appropriate.
I would suggest going with SYYYY on parsing and formatting.

DBCompare also needs to be looked at, since milliseconds since EPOCH is used for comparison, and this negative date does not make sense in that context.
Tagsdata conversion, dbcompare, dialect: oracle

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2020-01-23 12:27 pmarzullo New Issue
2020-01-23 12:27 pmarzullo Tag Attached: data conversion
2020-01-23 12:27 pmarzullo Tag Attached: dialect: oracle
2020-01-23 12:30 pmarzullo Description Updated View Revisions
2020-01-23 12:31 pmarzullo Tag Attached: dbcompare
2020-02-14 08:10 elong Target Version 3.11.5 => 3.11.6