>  기사  >  데이터 베이스  >  Direct MySQL Fetch가 UTC를 반환하는 동안 NodeJS가 MySQL 날짜를 UTC 2로 반환하는 이유는 무엇입니까?

Direct MySQL Fetch가 UTC를 반환하는 동안 NodeJS가 MySQL 날짜를 UTC 2로 반환하는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-25 05:33:29309검색

Why Does NodeJS Return MySQL Dates in UTC 2 While Direct MySQL Fetch Returns UTC?

NodeJS는 직접 MySQL 가져오기와 다른 MySQL 시간대를 반환합니다

질문:

MySQL에 직접 요청하면 서버에 구성된 시간대인 UTC로 날짜를 받게 됩니다. 그러나 NodeJS를 통해 데이터를 가져올 때 UTC 2 시간대 오프셋이 지속적으로 발생합니다. 이 문제가 발생하는 이유는 무엇이며 UTC 날짜를 얻기 위해 이 문제를 어떻게 해결할 수 있습니까?

답변:

시간대 처리 불일치는 NodeJS 환경의 구성 누락으로 인해 발생합니다. . 특히, MySQL 연결을 초기화할 때 시간대를 'utc'로 설정해야 합니다.

이 문제를 해결하려면 MySQL 연결을 설정하는 NodeJS 코드에 다음 줄을 추가하세요.

db_config.timezone = 'utc';

예를 들어, 코드가 index.js라는 파일에 정의된 경우 다음과 같이 구성됩니다.

<code class="javascript">var db_config = {
  host: 'localhost',
  user: 'xxx',
  password: '',
  database: 'xxx',
  timezone: 'utc'
};</code>

이 구성이 적용되면 NodeJS는 날짜를 적절하게 해석하고 표시합니다. UTC, MySQL 서버에서 직접 데이터를 가져올 때 얻은 값과 일치합니다. 이를 통해 다양한 환경에서 날짜/시간 필드를 처리할 때 일관성과 정확성이 보장됩니다.

위 내용은 Direct MySQL Fetch가 UTC를 반환하는 동안 NodeJS가 MySQL 날짜를 UTC 2로 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.