Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2009, 20:10   #1
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию Проектировка базы данных - расписание

Приветствую. Я редко общаюсь с базами. Есть задание, не скрываю, составлять расписание для вуза. Дело не в коде, сосбтвенно просто совет как лучше спроектировать структуру базы. Использую MS Access. Т.е. по сути существует таблица Группы в ней указываются группы типа ПР-07-1 в таком духе. Потом к каждой группе относятся 6 дней недели (кроме Воскресенья) и для каждого дня 6 пар - где указываются препод и предмет. Я спроектировал так чтоы для каждой группы создается 6 таблиц в духе ПР071Пн - для понедельника и в ней 6 пар (записей) и так далее.. Что-то мне подсказывает что не верным путем я иду. Может кто подскажет как лучше такую систему организовать ? Спасибо.
BOBAH13 вне форума Ответить с цитированием
Старый 21.01.2009, 20:13   #2
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

http://programmersforum.ru/showthread.php?t=36278 там бд прикреплена посмотри !!!
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 21.01.2009, 20:45   #3
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Благодарю за пример, будем стараться.
BOBAH13 вне форума Ответить с цитированием
Старый 21.01.2009, 20:49   #4
Тупой
Форумчанин
 
Аватар для Тупой
 
Регистрация: 26.12.2008
Сообщений: 146
По умолчанию

Есть целая наука - теория расписаний.
Например вот, советую почитать.
http://www.allmath.ru/appliedmath/op...operations.htm
"Hello, world!" - 17 errors 56 warnings
Тупой вне форума Ответить с цитированием
Старый 22.01.2009, 01:41   #5
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

я не смотрел предложенные вам ссылки, но я вот набросал вам структуру бд:
Итак для рассписания потребуется 4 таблицы(Week(недели), Gruppi(группы), Prepodi(преподаватели), Predmeti(предметы)). содержимое таблиц примерно следующие:
1. Week
IdWeek
NameWeek

2. Gruppi
IdWeek
IdGroppi
NameGruppi

3. Prepodi
IdWeek
IdGroppi
IdPrepod
NamePrepoda

4. Predmeti
IdWeek
IdGroppi
IdPrepod
NamePredmeti

сами связи между таблицами заключаются в следующем: у таблицы Week есть ключевое поле IdWeek, которое связывается с таблицей Gruppi (по такому же ключевому полю. это делается для того, что бы знать какая группа, в какой день нидели занимается), Prepodi (по этому же ключевому полю. для того, что бы знать какой преподаватель, в какой день нидели работает) и Predmeti (по этому же ключевому полю. для того, что бы знать какой предмет, в какой день нидели будет). Так же связывается таблица Gruppi по полю IdGroppi с таблицами Prepodi и Predmeti по аналогии как я и писал выше. В общем суть думаю понятно показал. А если нет, то извеняйте-у меня сейчас без двадцати два ночи и голова немножко не о том думает
фЁдОр вне форума Ответить с цитированием
Старый 22.01.2009, 05:29   #6
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

А если дней недели когда занимается группа 2 и больше то в таблице группы будет 2 и более id_group для одной группы?
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 22.01.2009, 09:49   #7
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

Цитата:
Сообщение от maladoy Посмотреть сообщение
А если дней недели когда занимается группа 2 и больше то в таблице группы будет 2 и более id_group для одной группы?
блин, несколько раз перечитывал. так и не смог понять, что вы спросили . напишите попонятнее.
фЁдОр вне форума Ответить с цитированием
Старый 22.01.2009, 10:28   #8
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

В вашей таблице "группы" есть поле idweek, то есть день когда занимается группа а если она занимается например во вторник, среду, и четверг то у вас в таблице будет 3 записи на одну группу или я чего то не догоняю? То есть у одной группы будет 3 разных id?
вступлю в команду разработчиков ПО на Delphi

Последний раз редактировалось maladoy; 22.01.2009 в 10:32.
maladoy вне форума Ответить с цитированием
Старый 22.01.2009, 14:22   #9
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

теперь я понял, что вы имеете ввиду . да судя по моей структуре, записи будут так производится. У вас есть другие варианты?
фЁдОр вне форума Ответить с цитированием
Старый 22.01.2009, 14:27   #10
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Есть! И именно мой вариант лежит в ссылке которую я указал. Гляньте если не лень...
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Базы данных Valera Помощь студентам 1 13.08.2008 10:38
базы данных Gromsky Помощь студентам 2 03.03.2008 15:45