데이터베이스의 각 주소에 대한 시간대 수집을 시작하려고합니다. 시간대를 저장하는 가장 좋은 방법은 무엇입니까? 기존 주소 레코드의 시간대를 얻는 방법은 무엇입니까?
Microsoft SQL Server, .net mvc, C #을 사용하고 있습니다. 어떤 제안이라도 대단히 감사하겠습니다.
데이터베이스의 각 주소에 대한 시간대 수집을 시작하려고합니다. 시간대를 저장하는 가장 좋은 방법은 무엇입니까? 기존 주소 레코드의 시간대를 얻는 방법은 무엇입니까?
Microsoft SQL Server, .net mvc, C #을 사용하고 있습니다. 어떤 제안이라도 대단히 감사하겠습니다.
답변:
항상 (또는 일년에 두 번) 변하지 않는 것을 저장하려고합니다. 표준 시간대 데이터베이스 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones 는 정확히 옳습니다. 두 글자 만 저장하면됩니다.
이 데이터베이스에서 시간 오프셋 및 일광 절약 시간 제가 활성화 된 시간을 문의 할 수 있습니다. 시간 오프셋뿐만 아니라 영역도 제공하므로 동일한 위도의 많은 장소에 다른 코드가 있으며 시간대 규칙을 개별적으로 변경할 수 있으며 소프트웨어에서 처리 할 수 있습니다.
데이터베이스를 변경해야하는 유일한 시간은 위치가 속한 시간대가 변경 될 때 뿐이며 매우 드 rare니다.
.Net framework 4.0 이상을 사용한다고 가정하면 TimeZoneInfo 가 필요합니다.
데이터베이스에 모든 날짜 값을 UTC 형식으로 저장하십시오. 각 클라이언트에 대해 ID 값 또는 ToSerializedString () 결과를 사용하여 저장된 날짜를 표시 할 로컬 형식으로 변환하는 TimeZoneInfo 오브젝트를 작성하십시오.