![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужна БД [D6]
romchik © (2003-01-17 01:26:00)Хотелось бы совет по поводу:
Нужно написать БД, типа экзаменационной ведомости.
К примеру, выбрал в одном ‘комбобоксе’ учебную группу ‘1А’, а в другом
предмет ‘математика’, и в ‘дбгриде’ видно оценки этой группы по этому предмету,
ну и в ‘лэйбе’ видно фамилию преподавателя.
Так вот как эти таблицы связать, и сколько их надо 2 или 3.
Я думаю надо 2 таблицы с такими полями.
1) № | предмет | преподаватель 2) № | группа |предмет| кабинет
И связать их по предмету (вторичными индексами). Как вы считаете?
Буду признателен за совет. Конечно было бы не плохо выводить инфу и по выбранному студенту (все его оценки по всем предметам), но для меня это пока сложновато.
Sergey13 (2003-01-17 11:53:00) [1]2romchik © (17.01.03 01:26)
Не очень понятно задание. Экзаменационная ведомость или журнал успеваемости. Это немного разные вещи.
Если первое то на фига номер кабинета? Это что - важно? Или как быть если студенты одной группы сдают экзамен разным преподам? Такое тоже бывает.
Если второе то не хватает дат. Ведь не одна же оценка у студента за семестр. Да и кабинет, ИМХО, и здесь ни к чему. Разве что нужна инфа - в каком кабинете больше всего двоек ставят. 8-)
MsGuns (2003-01-17 11:19:00) [2]Согласен с BorisUK © (17.01.03 07:30), но с некоторыми поправками:
В записи таблицы о студентах не должно быть ссылки на группу, а вот в таблице состава групп должны быть ссылки на студентов. иначе как быть с огурцами, перешедшими из одной группы в другую ?
Данные об оценках дожны иметь доп. разрез - ключ : Период (семестр, месяц, дата или другое в этом духе). В противном случае перед каждой сессией придется БД чистить, затирая инфу прошлого семестра.
AlexSV (2003-01-17 10:01:00) [3]> BorisUK ©
Позвольте внести небольшую поправку,
если Предметов может быть несколько с одним названием - просто ведут разные препы
то оптимальнее создать таблицу предметов
КодПредмета, Название Предм (далее поля по необходимости предметной области), Ключ -КодПредмета
и, соответвенно, исключить из 2 Название Предм и все что с ним связано
В этом случае можно еще и по предметам получать информацию,
например какие преподы преподавали на каком курсе и.т.д
BorisUK (2003-01-17 07:30:00) [4]Савершенно непонятно что за совет тебе нужен.
По твоей задаче видно что парой таблиц ты не обойдешся.
И даже 3 маловато.
Во первых обычная ситуация:
Препод может быть ведущим нескольких предметов и быть еще лаборантом у пары других препов. Или просто быть лаборантом и ничего не вести.
Предметов может быть несколько с одним названием - просто ведут разные препы (для разных потоков к примеру)
Группы студиков имеют набор предметов и списки оценок по каждому.
Вот теперь смотри сам предметную область:
1 - КодПрепа, ФИОПрепода, (Телефон, Адрес, Привычки, Взятки берет или нет - Это все по желанию... предметная область тебе виднее) Ключ -Код препа -уник
2 - КодПредмета, КодПрепа, Название Предм, Лаборант (тоже ссылка на справочник преподов), НомерАудитории (хотя это можно и вынести в доп справочник - если есть доп атрибутика для аудиторий) Ключ -КодПредмета, кодпрепа - составной уник
3 - КодГруппы, КодПредмета, НазваниеСпециальность, итд
4 - КодСтудента, КодГруппы, Дом адрес, Телефон, судимости - кароче что хочешь кароче... Считай что личная карточка Ключ КодСтудента - уник
5 - Таблица результатов для каждой группы и каждого стужента типа:
КодГруппы, КодПредмета, КодСтудента (эти три поля уник ключ)
далее делаешь поля собственно ОЦЕНКА, КОММЕНТАРИЙ итд
И Все теперь кладешь фильтры как ты там хотел
КодГруппы = Х, КодПредмета=У - получишь список сдавших студентов и результат
Добавишь КодСтудента = П - Найдешь одного студа
Сделаешь КодСтудента = П, КодПредмета=У - получишь по одному студу все результаты...
Итд итп И хотя скорее всего тут можно еще много расширить и нормализовать, но все основные функции есть.
Список преподов, список групп (со списком студентов), список предметов для каждой группы (если надо то и с указанием препода)
Ну и результаты каки хож.
В общем примерно так - это ИМХО.
Уверен что задумавшись на пуру часов ты сделаешь лучше т к задача элементарная...