2017-12-03 23 views
1

psql(PostgreSQL)9.5.10で動作しているデータベースをインポートしています。私のローカルデータベースv.9.6.5用。エラー:パラメータ "TimeZone"の値が無効です: "カナダ/東サスカチュワン"

COPY timezone (id, name, windowsname, tzindex) FROM stdin; 
... 
315  Canada/East-Saskatchewan  \N  \N 
... 

これは私が得ているエラーは次のとおりです:有効なタイムゾーンの識別子にするために使用

pg_restore: [archiver (db)] Error while PROCESSING TOC: pg_restore: [archiver (db)] Error from TOC entry 9024; 0 48454 TABLE DATA timezone skysms pg_restore: [archiver (db)] COPY failed for table "timezone": ERROR: invalid value for parameter "TimeZone": "Canada/East-Saskatchewan" CONTEXT: SQL statement "SET local timezone to 'Canada/East-Saskatchewan'" PL/pgSQL function display_in_other_tz(timestamp with time zone,text,text) line 7 at EXECUTE statement COPY timezone, line 315: "315 Canada/East-Saskatchewan \N \N"

+0

あなたは 'select * from pg_timezone_namesの間にそれを見ますか? 'Canada%';'? 'のような名前です.. –

+0

いいえ、 '' ''カナダ/サスカチュワン '' 'のみです。 –

+0

as far s '関数pg_catalog.pg_timezone_names(OUT名テキスト、OUT略語、OUT utc_offset interval、OUT is_dst boolean)'あなたはpostgresソースの近くにsmbdの助けが必要です。私は 'EastSaskatchewan'の不在がバグだと思います... –

答えて

2

ゾーンCanada/East-Saskatchewan

これは、問題の部分です。これはAmerica/Reginaタイムゾーンのリンク/エイリアスでした。ただし、最後のバージョン(2017c)のtzデータベースからが削除されました。です。あなたはコミットhereを見ることができます。

The 2017c release announcement状態:だから

Remove Canada/East-Saskatchewan from the 'backward' file, as it exceeded the 14-character limit and was an unused misnomer anyway.

通常時間帯識別子は、それが、その長さに必要と考えられたこの特定の一つのために、このように除去されないいます。

Canada/East-Saskatchewanのエントリは、ゾーンの推奨地域ベースの形式(America/Regina)に安全に更新できます。

関連する問題