Alterando o valor do fuso horário dos dados

Eu tenho que importardados sem informação de fuso horário nele (no entanto, eu sei o fuso horário específico dos dados que eu quero importar), mas eu preciso dotimestamp with time zone formato no banco de dados. Depois de importá-lo e definir o tipo de dados de carimbo de data / hora paratimestamp with time zone, O Postgres assumirá automaticamente que os dados na tabela são do meu fuso horário e atribuem meu fuso horário a ele. Infelizmente os dados que eu quero importar não são do meu tempo, então isso não funciona.

O banco de dados também contém dados com diferentes fusos horários. No entanto, o fuso horário dentro de uma tabela é sempre o mesmo.

Agora, eu poderia definir o fuso horário do banco de dados para o fuso horário dos dados que eu quero importar antes de importar os dados (usandoSET time zone comando) e alterá-lo de volta para o meu fuso horário uma vez que a importação é feito, e tenho certeza que os dados já armazenados não serão afetados pela mudança de fuso horário do banco de dados. Mas esta parece ser uma abordagem bastante suja e pode causar problemas mais tarde.

Gostaria de saber se existe uma maneira mais elegante de especificar o fuso horário para a importação sem ter os dados de fuso horário nos próprios dados?

Além disso, não encontrei uma maneira de editar informações de fuso horário após a importação. Existe uma maneira de não converter, mas simplesmente editar o fuso horário para uma tabela inteira, assumindo que a tabela inteira tem o mesmo deslocamento de fuso horário (ou seja, se um errado foi atribuído na entrada de dados / importação)?

Editar:
Eu consegui especificar um fuso horário na importação, sendo o comando inteiro:

set session time zone 'UTC';
COPY tbl FROM 'c:\Users\Public\Downloads\test.csv' DELIMITERS ',' CSV;
set session time zone 'CET';

Os dados são importados usando o fuso horário da sessão. Eu suponho que isso não tem efeito sobre outras consultas no banco de dados ao mesmo tempo de outras conexões?

Editar 2:
Descobri como alterar o fuso horário de uma tabela depois:
Correção de fuso horário de atualização do PostgreSQL

Eu suponho que é mais elegante para alterar o fuso horário da tabela após a importação, em seguida, usar a sessão para alterar o fuso horário local temporário. Supondo que a tabela inteira tenha o mesmo fuso horário, é claro.

Então o código seria agora algo ao longo da linha de:

COPY tbl FROM 'c:\Users\Public\Downloads\test.csv' DELIMITERS ',' CSV;
UPDATE tbl SET <tstz_field> = <tstz_field> AT TIME ZONE '<correct_time_zone>';

questionAnswers(1)

yourAnswerToTheQuestion