Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.12;
Скачать: CL | DM;

Вниз

Сервер и время   Найти похожие ветки 

 
Kabazoo   (2006-01-21 02:17) [0]

Народ , вопрос следующий ...

Есть база на firebird ...
В одной из таблиц есть поле типа TIME

В клиентском приложении при добавлении записи в таблицу в соответствуещее поле заносится время добавления записи ...

Вопрос: Если ли какая нють функция , которая позволила бы узнать и записать в таблицу текущее время на самом сервере БД , а не на локальной машине ???


 
Fay ©   (2006-01-21 04:04) [1]

2 Kabazoo   (21.01.06 2:17)
CURRENT_TIME, что ли?


 
mr.il ©   (2006-01-21 07:41) [2]

в триггере BeforeInsert пишеш:
твое_поле.new = "now";


 
mr.il ©   (2006-01-21 09:17) [3]

Тока вроде-бы в двойных кавычках, а то он попытается как строку вставить.


 
Vemer ©   (2006-01-21 10:08) [4]

Зачем напрягать клиентскую часть, когда это можно делать автоматом на серваке.
Создай новое поле типа Тиме с опцией Default = Current_Time.
Сервер сам будет заносить туда время.
Если конечно ты не будешь пытаться редактировать его нa клиенте :).


 
Sergey Masloff   (2006-01-21 11:30) [5]

Vemer ©   (21.01.06 10:08) [4]
Как насчет случая когда сервер и клиент в разных часовых поясах?


 
Sergey Masloff   (2006-01-21 11:31) [6]

mr.il ©   (21.01.06 07:41) [2]
"NOW" устаревшая фича поддерживаемая для backward совместимости. Надо использовать CURRENT_XXX


 
Kabazoo   (2006-01-21 11:37) [7]

Vemer ©

Это время нельзя будет отредактировать позже(при необходимости) , я правильно понимаю ???


 
mr.il ©   (2006-01-21 11:56) [8]

Благодарю.


 
Anatoly Podgoretsky ©   (2006-01-21 12:15) [9]

Sergey Masloff   (21.01.06 11:30) [5]
Очень просто, не надо хранить в локальном времени, для этого использовать UTC


 
Vemer ©   (2006-01-21 12:24) [10]

To Sergey Masloff
автор пишет:
"текущее время на самом сервере БД , а не на локальной машине"

To Kabazoo
Имелось в виду открывать/редактировать во время вставки строки.
Потом можешь менять его как хочешь.
Только опять-же - если у тебя есть точное время выполнения операций по серверу - зачем его менять?


 
Sergey Masloff   (2006-01-21 13:35) [11]

Anatoly Podgoretsky ©   (21.01.06 12:15) [9]
>Очень просто, не надо хранить в локальном времени, для этого >использовать UTC
Да это понятно. Только знает ли сервер что за время у клиента?


 
Anatoly Podgoretsky ©   (2006-01-21 14:36) [12]

Sergey Masloff   (21.01.06 13:35) [11]
А ему и не надо знать, а то может что у двух рядом сидящих клиентов время может сильно отличаться. Время надо устанавливать на сервере и на клиенте (или на сервере) приводить к локальному. Тогда будет одназначность и точность.


 
Anatoly Podgoretsky ©   (2006-01-21 14:41) [13]

Примечание - может использоваться любое опорное время, не обязательно UTC, просто последнее системно и позиционно независимо. Каждый клиент будет видеть свое локальное время, а на сервер опорно. В случае использования UTC серверу не придется беспокоиться ни о времени клиента, ни о его часовом поясе. Если же время должно показываться в независимом формате и одинаково у всех клиентов, то используется системное время на обеих сторонах. Часто время в этом случае показывают в другой форме hh:mm:ss (аббревиатура и + смещене), для одназначности.


 
Sergey Masloff   (2006-01-21 15:53) [14]

Да я-то знаю. Просто хотел на это внимание обратить вопрошавшего ;-)



Страницы: 1 вся ветка

Текущий архив: 2006.03.12;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.048 c
15-1140255896
lime
2006-02-18 12:44
2006.03.12
гиперссылка


2-1140442894
Pearled
2006-02-20 16:41
2006.03.12
Получить из имени класса сам класс


4-1134903687
Dark Lord
2005-12-18 14:01
2006.03.12
Определение русскоязычных шрифтов


3-1137064386
DimDim
2006-01-12 14:13
2006.03.12
Неправильно работает фильтр!


2-1140430374
reboot
2006-02-20 13:12
2006.03.12
компоненты vcl