Insert timestamp with timezone in database

47 views (last 30 days)
Hi,
I'd like to insert (table) data into an Oracle database. The data contains datetime variables with timezone information which should be inserted into a oracle table with type timestamp with timezone.
sqlwrite (or similar) function can add/transform datetime to timestamp (oracle), but not to timestamp with timezone. The only workaround I've found is a direct linewise exec insert sql statement (insert into table () values ().... ) whereas datetime timezone is set to UTC and is formatted like
strcat('to_timestamp_tz(''', datestr(tbl.TS ,'dd.mm.yyyy HH:MM'), ' 00:00'', ''dd.mm.yyyy HH24:MI TZH:TZM'')')
Not very elegant and fast...
I'm using R19b.
Thanks for any hints...
Christian

Accepted Answer

Shadaab Siddiqie
Shadaab Siddiqie on 30 Jul 2021
From my understanding you want to insert timestamp with time zone in database. Since this is some sort of custom format that you want inserted into your database from my understanding you must create a workaround it (as you have already done) and there might not be another elegant way to do it.
  1 Comment
Christian
Christian on 30 Jul 2021
Thanks for the feedback. Yes, that's what I'd like to do.
I thought since timestamp with timezone a common data type in oracle there might be a common way to import these data. However, this seems to be a general issue (importing timezone information to oracle), since I ran into the same problem in other languages like Python...

Sign in to comment.

More Answers (0)

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!