HQL을 사용하여 데이터베이스 시간대를 가져 오는 방법이 있습니까?
모든 데이터베이스에서 동일한 HQL이 작동합니까?데이터베이스 시간대를 가져 오는 HQL
빠른 응답을 바랍니다. 감사.
HQL을 사용하여 데이터베이스 시간대를 가져 오는 방법이 있습니까?
모든 데이터베이스에서 동일한 HQL이 작동합니까?데이터베이스 시간대를 가져 오는 HQL
빠른 응답을 바랍니다. 감사.
표준 시간대 변환은 기본 JDBC 드라이버 (최대 절전 모드가 아닌)가 수행합니다. 이 방법으로 서버 시간대가 응용 프로그램에서 숨겨집니다. 내가 아는 한 서버 시간대를 읽는 "공식적인"방법은 없습니다. Oracle 데이터베이스에
당신은 당신이
SELECT @@global.time_zone, @@session.time_zone;
을하지만 당신이 볼 수있는이 모든 데이터베이스 작동하지 않습니다 MySQL을 들어
SELECT DBTIMEZONE FROM dual;
와 서버 시간대를 읽을 수 있습니다.
(hibernate.cfg.xml의) JDBC 연결 문자열에 데이터베이스 시간대를 구성 할 수 있지만 더 많은 데이터베이스가 필요합니다.
타 솔루션은 -Dserver-timezone=...
와 응용 프로그램에서 응용 프로그램을 시작할 때 당신이 모든 데이터베이스 작동이 방법으로
String tz = System.getProperty("server-timezone");
하여 읽을 수 있지만에 지정한 시스템 속성을 정의하는 것입니다 시작 스크립트에서 지정해야합니다.
아마 current_timestamp() 및 date_format()을 사용하고 계십니까? – user2246674