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

Вниз

посоветуйте структуру таблицы   Найти похожие ветки 

 
stud ©   (2005-05-17 11:37) [0]

необходимо контролировать посещения клиентов по времени и дням недели т.е.
например можно посещать
пн 9,00-18,00
вт 9-18
ср 10-20
..
вс 11-16 т.е. эту инфу нужно хранить в базе. как лучше это сделать?
создать поля в таблице: d1start,d1end.....d7start,d7end или
отдельную таблицу со связью или...


 
Anatoly Podgoretsky ©   (2005-05-17 11:39) [1]

Ну это посмотреть надо.


 
stud ©   (2005-05-17 11:42) [2]

куда?


 
msguns ©   (2005-05-17 11:43) [3]

Отдельную таблицу-дочку с двумя информационными полями типа TDateTime


 
Sergey13 ©   (2005-05-17 11:44) [4]

Если у всех есть допуск на каждый день (или почти на каждый) недели, то наверное можно и в одну запись напихать полей. Если у одного только по понедельникам у другого по вторникам - наверное лучше отдельную таблицу.
Можно еще подумать про стандартные графики. Т.е. для графика прописываются часы, а челу проставляется соответствие графику.


 
Max Zyuzin ©   (2005-05-17 11:51) [5]

>msguns ©   (17.05.05 11:43) [3]
К этой табличке еще припаять день недели и совсем хорошо будет... разве что с праздиками проблеммы... но это тоже решаемо, заведением таблички с праздиками...


 
msguns ©   (2005-05-17 11:55) [6]

>Max Zyuzin ©   (17.05.05 11:51) [5]
>К этой табличке еще припаять день недели

Зачем ?


 
Max Zyuzin ©   (2005-05-17 12:24) [7]

>msguns ©   (17.05.05 11:55) [6]
В твоем варианте получается что каждому клиенту придется забивать даты посещения на каждый каждый день вообще, а тут нужно именно по недельно.


 
stud ©   (2005-05-17 12:28) [8]


> К этой табличке еще припаять день недели и совсем
> хорошо будет

обязательно, дата тут не при чем, тут день недели важен


 
Max Zyuzin ©   (2005-05-17 12:33) [9]

>stud ©   (17.05.05 12:28) [8]
TDataTime там при том, что в ней будет хранится время посещения :)


 
msguns ©   (2005-05-17 12:41) [10]

>stud ©  
>Max Zyuzin ©

А вытянуть день недели из TDataTime предрассудки не позволяют ?


 
Max Zyuzin ©   (2005-05-17 12:46) [11]

>msguns ©   (17.05.05 12:41) [10]
Серег ты мыслишь не в ту сторону (или я :-))
В твоей таблице, например, скажи сколько понадобится записей, что бы записать все понедельники за год?


 
Max Zyuzin ©   (2005-05-17 12:48) [12]

>msguns ©   (17.05.05 12:41) [10]
Ааа я понял, ты типа хочешь что бы часть которая за дату отвечает хранила первую неделю любого года? Типа от туда только определям какой день недели так что ли?


 
msguns ©   (2005-05-17 12:49) [13]

>Max Zyuzin ©   (17.05.05 12:46) [11]
>Серег ты мыслишь не в ту сторону (или я :-))
В твоей таблице, например, скажи сколько понадобится записей, что бы записать все понедельники за год?

Дай, чегой-то я в последнее время пренебрегаю сухими дрожжами - хреново с воображением..

Зачем в БД хранить ПОНЕДЕЛЬНИКИ, ЧЕТВЕРГИ и т.д. ???


 
ANB ©   (2005-05-17 12:52) [14]


> msguns ©   (17.05.05 12:49) [13]

План составляем на стандартную неделю.
Типа Пн 10.00 - 18.00.
Когда начнется нужная - определяем праздники и на лету считаем дату. Да решил уже автор проблему по вышестояшим постам.


 
Anatoly Podgoretsky ©   (2005-05-17 12:58) [15]

stud ©   (17.05.05 11:42) [2]
В твои сущности.


 
msguns ©   (2005-05-17 12:59) [16]

>ANB ©   (17.05.05 12:52) [14]
>План составляем на стандартную неделю

Ага. Но план-то составляет клиент. Или сервер ? А вот на клиенте рисуй на форме хоть четверги, хоть пятницы, с учетом хоть выходных, хоть праздников святого Бодуна - на сервер пойдет TDateTime, и вообще ему совершенно серо-помаранчево, какой день недели и для чего. Вся это требуха выполняется запросами, желательно грамотно написанными. Только вот причем здесь структура таблиц (смотрим сабж) ?


 
stud ©   (2005-05-17 13:04) [17]


> А вытянуть день недели из TDataTime предрассудки не
> позволяют

извиняюсь, наверное не совсем понятно изложил суть задачи.
необходимо, чтобы клиенты по указанным дням недели могли проходить только в указанное время
т.е. если он пришел в "непроходное" время)) его не надо пускать


 
Anatoly Podgoretsky ©   (2005-05-17 13:54) [18]

Это называется охранный календарь и в данной постановке - день недели, вход, выход - при условии не перехода через сутки, что является частным случаем.


 
ANB ©   (2005-05-17 14:28) [19]


> на сервер пойдет TDateTime
- зачем ему на сервере TDateTime ? Если можно хранить номер дня недели и 2 времени в любом формате.


 
stud ©   (2005-05-17 14:39) [20]

хранить надо в любом случае:
день_недели,можно_приходить_с, можно_приходить_по.
вопрос как это удобнее реализовать, чтобы и хранилось нормально и использовать удобно было


 
Sergey13 ©   (2005-05-17 14:43) [21]

2[20] stud ©   (17.05.05 14:39)
>вопрос как это удобнее реализовать, чтобы и хранилось нормально и использовать удобно было
Так хранить и использовать ты будешь или Пушкин? Ты? Тебе и решать. Вариантов достаточно (ты их сам перечислил 8-).


 
stud ©   (2005-05-17 15:01) [22]

вот и спрашиваю про варианты!!!!!


 
Sergey13 ©   (2005-05-17 15:07) [23]

2[22] stud ©   (17.05.05 15:01)
Я тебя в [4] тоже спрашивал (точнее фантазировал при отсутствии инфы), но ты же молчишь на это.


 
stud ©   (2005-05-17 15:14) [24]

наверное лучше отдельную таблицу.....


 
Max Zyuzin ©   (2005-05-17 15:15) [25]

>msguns ©   (17.05.05 12:49) [13]
Чего то начало недели а я туплю... не понял я нифига как в твоей таблице будет сохранятся например что в четверг можно ходит с 11-00 до 15-00 напиши плиз что будет жить в твоей таблице?

>stud ©   (17.05.05 14:39) [20]
Тебе уже вроде насоветовали, да ты и сам насоветовал... а по поводу удобст - каждому удобно по совему... кому стоя в гамаке... :)


 
msguns ©   (2005-05-17 15:16) [26]

Не, ну чего подняли сыр-бор-то ?
Есть 2 сущности:
1)график
2)процедура регистрации

График составляется НА КЛИЕНТЕ, т.е. с помощью удобной для пользователя (админа) формы: с разными пикерами, календарями, праздниками-выходными, дежурством бобика со сторожем дядей Ваней и т.д.
Главное, чтобы в БД была записана след.информация:
- Клиент
- Дата
- Время входа
- Время выхода

Последние три поля вполне симбиобствуют в одном TDateTime !

Когда студент Непришейконюхвостенко пытается завалиться в систему (говоря по-бразильски - логиниться), посланная с тачки малява попадает на сервер, где тупо выполняется запрос типа
А-ну-ка-дай-инфу-по-клиенту-имярек-где_дата_время_сегодня_витвин_время_входа_и_время выхода.
Если запрос вернет запись, то заходи, дорогой, гостем будешь. Иначе - поганая метла и грязный сапог под зад.

 ВСЕ !


 
msguns ©   (2005-05-17 15:18) [27]

Извиняюсь, в двух дататаймах.


 
Sergey13 ©   (2005-05-17 15:41) [28]

2 [24] stud ©   (17.05.05 15:14)
>наверное лучше отдельную таблицу.....
Наверное. Избавишься от динамических запросов по выборке нужных полей.


 
Max Zyuzin ©   (2005-05-17 15:57) [29]

>msguns ©   (17.05.05 15:16) [26]
Ну нету у автора там поля "Дата"... хоть тресни... есть только день недели, время входа и выхода...


 
stud ©   (2005-05-17 16:17) [30]


> Ну нету у автора там поля "Дата"...

в данном случае дата не нужна! нужен день недели:
1 00:00 11:11
2 11:11 12:12
...
когда приходит чел из даты прихода вытаскивается день недели и сравнивается с тем, который в БД и принимается решение о пропуске или отказе


 
ANB ©   (2005-05-17 16:22) [31]

Опиши ТЗ подробнее.
Имхо :
Если у клиентов типовые графики, то заведи таблички графики и интервалы (интервалы привязать к графикам). А клиенту присваивай номер графика.
Если клиентов не очень много, но у всех индивидуальные графики, то заведи табличку с интервалами, привязанную к клиенту.
Это уже было выше.


 
stud ©   (2005-05-17 16:24) [32]

клиент покупает тарифный план для занятий в зале, согласно плану он может посешать зал в определенные дни недели и определенные часы


 
stud ©   (2005-05-17 16:25) [33]

т.е. тарифных планов много, один клиентв может иметь  их несколько, график посещений по планам может отличаться


 
ANB ©   (2005-05-17 16:43) [34]

Тады добавь линковку клиент - график и не мучайся.


 
stud ©   (2005-05-17 17:03) [35]

время посещения привязано не к клиенту, а к тарифному плану, который он на данный моент хочет использовать


 
stud ©   (2005-05-17 17:03) [36]

в общем я уже разобрался



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

Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.038 c
4-1113469919
Pa5ha
2005-04-14 13:11
2005.06.29
Menu & OpenDialog runTime


14-1117216490
sofs
2005-05-27 21:54
2005.06.29
порты


1-1117762854
dp200
2005-06-03 05:40
2005.06.29
FileName


1-1118260453
Gopher
2005-06-08 23:54
2005.06.29
Синтаксис


3-1116840124
aleliko
2005-05-23 13:22
2005.06.29
И снова картинки ...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский