2016-08-18 11 views
1

私はSQLに新しいので、いくつか質問があります。 現在、私はTZ名を表示するためにMySQLと私たちに次のコマンドでタイムゾーンを読み込んでいます。MySQLにカスタムタイムゾーンを追加する方法

SELECT * FROM mysql.time_zone_name; 

私はは、テーブル全体をリロードすることなく、カスタムタイムゾーンを追加したいと思います。たとえば、US/HawaiiTZですが、TZUS/Hawaii-Aleutianに追加したいとしますが、同じTZを指すように、US/HAwaiiや他のタイムゾーンを指定する必要があります。これは可能ですか?

私は、私は次のように、この新しいTZを使用したいので、これをしたい:

SELECT convert_tz(now(), "Canada/Mountain", "US/Hawaii-Aleutian") 

答えて

2

あなたはmysql.time_zone_name表に行を挿入することにより、タイムゾーン名の別名を追加することができます。

例えば、

INSERT INTO mysql.time_zone_name 
      (Name, Time_zone_id) 
SELECT 'US/Whatever' Name, Time_zone_id 
    FROM mysql.time_zone_name 
    WHERE Name = 'US/Hawaii' 

しかし:これは真剣悪い考えです。 zoneinfo tablesは、さまざまな管轄区域でタイムゾーンと夏時間のポリシーが変更されているため、Linuxディストリビューションのアップデートを通じて定期的に更新されています。これらのアップデートがサーバに適用されると、MySQLのタイムゾーンテーブルへの変更が消去されます。ユーザーにUS/HawaiiUS/Aleutian、またはおそらくPacific/Honoluluのいずれかを使用するように依頼してください。

+0

ありがとう – agarc

関連する問題