10-13-2018 10:50 PM
Hi All,
I am using Date.UTC() method to generate last month date & using below syntax which seems to be fine.
Date.UTC(Date.now().minusMonths(1).getFullYear(),Date.now().minusMonths(1).getMonth(),0)
And output preview is also fine.
But while I am inserting data into Orcale DB, 1 day is getting subtracted from the date.
Not able to figure out where is the issue. Tried by changing date data type to varchar2 at DB level…but the value remain same.
Solved! Go to Solution.
10-18-2018 12:04 PM
@virender.prajapati I have seen this happening to me in MySQL. I used toLocalDateTimeString() function before inserting it into the DB and worked fine.
You can try this in your mapper,
Date.UTC(Date.now().minusMonths(1).getFullYear(),Date.now().minusMonths(1).getMonth(),0).toLocaleDateTimeString({“format”: “yyyy-MM-dd HH:mm:ss”,“timeZone”:“UTC”})
You can also look into oracle jdbc url properties
10-15-2018 12:42 PM
Looks like there is some timezone conversion being applied. The time in the preview is “00:00:00”, while the time in the other screenshot is “20:00:00”. Is the value being converted at some other point in the pipeline or oracle?
10-16-2018 12:02 AM
In pipeline data value remain same before the oracle insert snap, value is getting changed in Oracle DB.
But ideally it should insert value passed by pipeline only. Seems like in Oracle insert Snap…oracle timestamp is used which is generating this kind of problem.
10-18-2018 12:04 PM
@virender.prajapati I have seen this happening to me in MySQL. I used toLocalDateTimeString() function before inserting it into the DB and worked fine.
You can try this in your mapper,
Date.UTC(Date.now().minusMonths(1).getFullYear(),Date.now().minusMonths(1).getMonth(),0).toLocaleDateTimeString({“format”: “yyyy-MM-dd HH:mm:ss”,“timeZone”:“UTC”})
You can also look into oracle jdbc url properties
10-18-2018 02:46 PM
@virender.prajapati Can I ask if the snaplex nodes or OracleDB have a timezone set to something other than UTC?