Różnice czasów

0

Hej,

Mam taki oto problem.
Timestamp Servera BDD jest ustawiony na UTC.
I zauwazylam pewne roznice w czasie logowania danych. tzn.

Jezeli np aktualnie jest godzina 10:00 i porpzez aplikacje dodam rekord do bazy danych ( rekord bedzie zawieral open_time), to po wyswietleniu tego rekordu open_time wskazuje na godzine 9. Przy czym, w samej aplikacji wyswietla sie dobrze.

Moim zadaniem jest obecnie zrobic skrypt odpytujacy baze danych i wyswietlajacy pewien licznilk. Calosc jest generalnie zrobiona ale blokuje mnie to przesuniecie czasowe i nie wiem jak sobie z nim poradzic.

Czy i w jaki sposob da sie ustawic dla konkretnego usera, aby jego time zone byl zawsze taki sam jak czas serwera ???

0

W poprzedniej firmie miałem podobny problem. Na serwerze był czas centralny, na stacjach klienckich był czas lokalny. Klient napisany był w Delphi więc przy połączeniu ustawialiśmy na stacji klienckiej czas serwera. Problem pojawił się gdy inna aplikacja robiła to po odpaleniu naszej aplikacji. Rozwiązaniem było przekazywanie do zapytania parametru TZ i uzycie tego: https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions202.htm

0

nie bardzo umiem to rozwiazac...

 moglbys mi pokazac jak dla tkaiego wragmentu kodu to zrobic : 

```plsql
select extract (hour from ((S1.problem.open_time + 1/24  + 10/24/60 - current_timestamp))) || ':' ||
          extract (minute from (S1.problem.open_time + 1/24  +10/24/60 - current_timestamp))|| ':'|| 
         extract (second from (S1.problem.open_time + 1/24 + 10/24/60 - current_timestamp)) from dual)

Jest to oczywisice tylko fragment kodu... chodzi o zastapienie 1/24 na taka wartosc by nawet po zmianie czasu na letni, zapytanie zwracało poprawne wyniki

1 użytkowników online, w tym zalogowanych: 0, gości: 1