Incorrect date/time pulled in Matlab MySQL query

조회 수: 4 (최근 30일)
Allan Brett
Allan Brett 2021년 2월 5일
댓글: Allan Brett 2021년 2월 8일
I have a database on a remote server that is storing a mysql timestamp. This value is created from an epoch timestamp. When I run a query directly on the server through the command line it returns these fields as follows (mysql timestamp on the left / epoch timestamp on the right):
2020-09-07 17:02:14 | 1599498134 |
Note this result is from a simple query (select * from table where id = value)
When I run the same query through Matlab it returns:
'2020-09-07 11:02:14.0' | 1599498134 |
You will notice the hours have been shifted and there is now a '.0' added at the end. It seems to be auto-adjusting to local time for some reason (the epoch time is in GMT). The query is run through the 'DATA = select(connection, statement);' syntax. Any assistance on how to resolve this is appreciated.
I am using Matlab R2016b

채택된 답변

Manas Meena
Manas Meena 2021년 2월 8일
You can either configure the MySQL server to the required timezone.
Also you can try out something like the following command to set driver parameters for timezone in MATLAB
>> conn = database('',<username>,<password>,'com.mysql.cj.jdbc.Driver','jdbc:mysql://servername:portnumber/databasename?serverTimezone=UTC&')
  댓글 수: 1
Allan Brett
Allan Brett 2021년 2월 8일
Thank you. The issue was a mismatch between the server timezone and how I had configured the connection.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Database Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by