mysql
-
Spring Boot JPA : Java 날짜/시간 데이터 타입과 JPA, MySQL 타임존의 관계Spring Boot 2024. 4. 11. 01:42
Java 타입과 MySQL 저장 타입별 분석 최종 결론타임존이 필요한 시간을 저장할 때는 ZonedDateTime을 MySQL의 datetime에 저장하는 방식을 사용하자.장점: 다른 어떤 타임존 설정에도 영향받지 않는다.단점(아닐 수도): DB에는 항상 UTC 기준 시간으로 저장되고 조회된다.Java의 Date 타입은 DB 타임존과 DB 세션 타임존을 일치시켜서 MySQL의 timestamp에 저장해야 정확한 시간 값을 저장하고 조회할 수 있다.Java의 Calendar 타입은 DB 타임존과 DB 세션 타임존, Calendar 타임존을 일치시켜서 MySQL의 timestamp에 저장해야 정확한 시간 값을 저장하고 조회할 수 있다.Java의 LocalDateTime 타입은 시스템 기본 타임존과 DB 세션..
-
MySQL에서 time zone offset을 지정하여 데이터 삽입하기MySQL 2024. 4. 10. 19:27
MySQL에서 time zone offset 사용해보기 다음과 같은 쿼리문은 MySQL에서 실행이 잘 될까? INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'), ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00'); MySQL 서버 버전에 따라 다르다. MySQL 8.0.19 부터 TIMESTAMP와 DATETIME 타입의 컬럼에 데이터를 삽입할 때, time zone offset을 지정할 수 있다. 그 이하의 버전에서 위의 쿼리를 실행하면 다음과 같은 에러를 볼 수 있다. [22001][1292] Data truncation: Incorrect datetime v..