Таймер в БД

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
FIDO
Сообщения: 4
Зарегистрирован: 23 июн 2008, 08:59

Таймер в БД

Сообщение FIDO » 24 июл 2009, 10:27

Доброго времени суток, господа! Может быть промахнулся с разделом, но хотелось бы задать следующий вопрос - есть таблица подключенных пользователей USERCONNECT, есть поле WORKTIME. Хочу, чтобы в последнее записывалось время работы пользователя, т.е. чтобы работал таймер. Возможно подобное реализовать? Спасибо.
СУБД Firebird 1.5.4

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Re: Таймер в БД

Сообщение Attid » 24 июл 2009, 13:26

на клиенте можно, в БД нельзя.

FIDO
Сообщения: 4
Зарегистрирован: 23 июн 2008, 08:59

Re: Таймер в БД

Сообщение FIDO » 24 июл 2009, 13:31

??? поставить таймер на инсерт в БД с клиента? Извр. Ну ведь можно получить месяц в БД, время наверняка... Должны же быть варианты...

mdfv
Сообщения: 119
Зарегистрирован: 23 май 2006, 15:53

Re: Таймер в БД

Сообщение mdfv » 24 июл 2009, 13:41

Перейти на версию 2.
И там использовать триггеры на подключение к базе и отключение, в них и записывать время(ну или вычислять разницу между временем подключения и отключения).

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Таймер в БД

Сообщение Dimitry Sibiryakov » 24 июл 2009, 14:21

FIDO писал(а):Хочу, чтобы в последнее записывалось время работы пользователя, т.е. чтобы работал таймер. Возможно подобное реализовать?

Код: Выделить всё

ALTER TABLE USERCONNECT ADD WORKTIME COMPUTED BY CURRENT_TIMESTAMP-LOGINTIME
Доработать напильником по месту.

FIDO
Сообщения: 4
Зарегистрирован: 23 июн 2008, 08:59

Re: Таймер в БД

Сообщение FIDO » 24 июл 2009, 15:49

Спасибо! А по поводу версии 2.0 - страшно как-то резко переходить на что-то новое...

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Re: Таймер в БД

Сообщение Attid » 24 июл 2009, 16:10

в 2,0 нет тригеров на подключение, они повыше

переход на 2,0 вообще не вызывает проблем.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Re: Таймер в БД

Сообщение hvlad » 24 июл 2009, 17:42

Новое - это 2.5 :lol:

FIDO
Сообщения: 4
Зарегистрирован: 23 июн 2008, 08:59

Re: Таймер в БД

Сообщение FIDO » 27 июл 2009, 14:01

ALTER TABLE USERCONNECT ADD WORKTIME COMPUTED BY CURRENT_TIMESTAMP-LOGINTIME
Можно пояснить... Я так и не смог напильником довести до ума :(
CURRENT_TIMESTAMP-LOGINTIME <- Обе эти переменные не воспринимаются СУБД...

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Таймер в БД

Сообщение kdv » 27 июл 2009, 15:37

Обе эти переменные не воспринимаются СУБД...
запомни, что когда возникает ошибка, и ты о ней спрашиваешь, ты всегда должен привести это самое сообщение об ошибке.

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Re: Таймер в БД

Сообщение Attid » 28 июл 2009, 11:19

Код: Выделить всё

LOGINTIME <- Обе эти переменные не воспринимаются СУБД...
это полу в таблице, которое надо создать

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Таймер в БД

Сообщение Dimitry Sibiryakov » 28 июл 2009, 12:57

И, самое главное, в него надо занести время логина (на что и намекает его название). Будешь ты это делать триггерами или из приложения - неважно.

Ответить