20172017. 4. 6. 16:02

Azure SQL DB 를 비롯한 Azure services Default time zone UTC로 되어 있습니다. Azure SQL DB에서 사용자 임의로 서버 및 데이터베이스 수준으로 default time zone을 변경할 수 없습니다. 시간 처리를 위해서 middle/front end 에서 별도 시간을 관리하거나 데이터베이스 수준에서는 UTC 또는 에서 KST 값을 구하는 별도의 쿼리를 사용해서 구현할 수 있습니다.

 

Azure SQL DB 에서 제공하는 AT TIME ZONE 을 사용하여 아래와 같이 KST 값을 구하는데 활용할 수 있습니다.

 

DECLARE @D AS datetimeoffset

SET @D = CONVERT(datetimeoffset, getdate()) AT TIME ZONE 'Korea Standard Time'

SELECT @D, CONVERT(datetime, @D);

 

 

 

SYS.TIME_ZONE_INFO 를 사용하면 UTC의 OFFSET 값과 매치되는 표준 시간 이름을 알 수 있습니다.

 

 

[참고자료]

AT TIME ZONE (Transact-SQL)
https://docs.microsoft.com/en-us/sql/t-sql/queries/at-time-zone-transact-sql

 

sys.time_zone_info (Transact-SQL)
https://docs.microsoft.com/en-us/sql/relational-databases/system-catalog-views/sys-time-zone-info-transact-sql

 

Lesson Learned #4: Modifying the default time zone for your local time zone.
https://blogs.msdn.microsoft.com/azuresqlemea/2016/07/27/lesson-learned-4-modifying-the-default-time-zone-for-your-local-time-zone/

 

 

작성자: Lai Go / 작성일자: 2017.04.06

Posted by Lai Go