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