Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.012 c
1-1139467005
EdSin
2006-02-09 09:36
2006.03.12
Компонент TADOConnection в потоке


3-1137785105
turonix
2006-01-20 22:25
2006.03.12
Как определить входит ли поле в состав вторичного ключа средствам


4-1134833366
HandleFinder
2005-12-17 18:29
2006.03.12
Как найти Handle окна сообщения ShowMessage ?


15-1139943369
-Dfcz-
2006-02-14 21:56
2006.03.12
Delphi 2006


1-1139152821
t0mk4
2006-02-05 18:20
2006.03.12
shurtcut - ссылка на компонент





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский