[firebase-br] Query com time zone

Alexandre Pereira Bühler alexandre em simaoebuhler.com.br
Ter Fev 27 11:46:11 -03 2018


Obrigado a todos pela resposta e sugestão.

Em 27/02/2018 09:25, Gladiston Santana escreveu:
> Há uma issue para FB4:
> http://tracker.firebirdsql.org/browse/CORE-694
> e já está no roadmap:
> https://www.firebirdsql.org/en/planning-board/
>
> Até lá, a o time zone será sempre o que for recebido  pelo lado cliente e
> não há funções especificas para lidar com isso, por exemplo, obter o
> timezone de quem está conectado.
>
> Isso não quer dizer que não tenha como resolver o problema, afinal, banco
> de dados existiam antes das pessoas pensarem em situações como esta.
> Por exemplo, se estiver lidando com clientes de diferentes localidades e
> timezones, uma solução que penso no momento seria mudar o timezone do
> servidor para utc e criar um campo de sessão (namespace em alguns DBs) para
> armazenar o dst do horario local, do tipo integer.
> Daí então ao logar-se,você poderia usando RDB$SET_CONTEXT criar uma
> variavel de sessão para armazenar essa diferença de tempo DST, essa seria a
> unica vez que o lado cliente especificaria uma variavel de sessão:
> SELECT
>    rdb$set_context('USER_SESSION', 'CLIENT_DST_TIME', -2)
> FROM RDB$DATABASE
>
> Daí poderá fazer um select usando funções como dateadd e subtrair o
> CLIENT_DST_TIME
> (recem criado) para obter a data local do lado cliente:
> SELECT
>    DATEADD(HOUR,
>      rdb$get_context('USER_SESSION', 'CLIENT_DST_TIME'),
>      CURRENT_TIMESTAMP)
> FROM RDB$DATABASE
>
> Também ao armazenar um timestap usaria a mesmo método para que pudesse
> gravar no database sempre em UTC.
>
> []´s
>
> 2018-02-27 2:50 GMT-03:00 Alexandre Pereira Bühler <
> alexandre em simaoebuhler.com.br>:
>
>> Bom dia,
>> Procurei no google e em parte da documentação mas não achei nada que
>> pudesse utilizar.
>> Sabem me dizer se o Firebird 2.5 tem query com time zone ao estilo do
>> postgresql?
>> Exemplo:
>>
>> "AT TIME ZONE"
>>
>> Obrigado
>>
>>
>> --
>> Alexandre Pereira Bühler
>> Linux User: 397.546
>>
>> Simão &  Bühler Ltda (Infobrindes)
>> http://www.simaoebuhler.com.br
>> alexandre em simaoebuhler.com.br
>> Telefone: (41) 3039-5428
>>
>> Infobrindes (Simão &  Bühler Ltda)
>> Brindes e material promocional.
>> http://www.infobrindes.com.br
>> karin em infobrindes.com.br
>> Telefone: (41) 3082-8667
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://www.firebase.com.br/pes
>> quisa_lista.html
>>
>
>

-- 
Alexandre Pereira Bühler
Linux User: 397.546

Simão &  Bühler Ltda (Infobrindes)
http://www.simaoebuhler.com.br
alexandre em simaoebuhler.com.br
Telefone: (41) 3039-5428

Infobrindes (Simão &  Bühler Ltda)
Brindes e material promocional.
http://www.infobrindes.com.br
karin em infobrindes.com.br
Telefone: (41) 3082-8667





Mais detalhes sobre a lista de discussão lista