|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.11.2008, 07:37 | #1 |
Форумчанин
Регистрация: 05.06.2008
Сообщений: 100
|
Schoool DB
Vsem Salam delo takoe mne dali temu kursovoi raboty:
16. Школа. База данных должна содержать сведения обо всех участниках образовательного процесса, о классах и их классных руководителях, об аудиториях, закрепленных за классом, о преподвателях-предметниках, о расписании, об успеваемости учащихся. Znau eto legkoe tema no sovety ne pomeshaet i tak ia sozdal poka 2 table 1) U4eniki ID_nomer FIO Klass Adress Telefon 2) U4iteli Id_nomer FIO Dolzhinost Adress Telefon Pomogite mne s ostalnymi tablitsami (tablitsa sazdaetsa na SQL) |
28.11.2008, 11:06 | #2 | |
Пользователь
Регистрация: 11.07.2008
Сообщений: 91
|
Цитата:
И не стоит начинать писать программу пока не продумаете структуру БД!!! Хотелось бы по точнее узнать БД которую вы будите использовать я бы в данном случае использовал MSSQL И определится с переводом учеников/учителей Каждый ученик должен перейти в другой класс либо не перейти У каждого учителя должен увеличится стаж работы и тд Так же необходимо определится с успеваемосью учеников, это что за зверь ? Это любая оценка за каждый день которую может получить ученик либо это оценка к примеру за четверть и тд? Также необходимо определится с отчетами будет ли создаваться отчет в котором, будут учавствовать данные с предыдущих годов Пример: необходимо сравнить какие либо данные в школе за разные года к примеру сколько осталось на второй год, сколько в школе отличников какие у школы достижения по сравнению с предыдущими годами и тд... Для чего все это? Оч просто: Пример ученик/учитель уходят/увольняются со школы, а через некоторое время они захотят востановится в этой школе - можно сразу удалить эти данные либо пометить на удаление их в конце года их зачистить...., когда будет происходить так называемый "Перевод года" Решение проблемы не скажу, хочется чтобы автор темы сам придумал и решил как ему поступить Не много про структуру табличек "Как бы это сделал я" 1) Должна быть 1 табличка в которой будет содержаться информация о персоналиях туда будут попадать все и у ученики и преподаватели ( могут попадать родители детей, сотрудники школы, партнеры школы итд...) Структура примерно такая: ID - ID строки UserGuid - уникальный индефикатор пользователя (можно не вводить но всякий случай будет) FirstName - Фамилия LastName - Имя MidleName - Отчество Initials - иницыалы (так сказать чтобы потом не мучаться при создании отчетов, если инициалы не используются в отчетах можно не вносить) AdressID - ID строки с таблички Адреса ( сделанно для того чтобы адреса не дублировались так сказать могут в одной школе могут учится дети с одной семьи у них может быть один адрес. так же учитель может быть чьим то родителем итд...) HomeTelephone - домашний телефон MobileTelephoneID - индетификатор ID таблицы MobileTelephone, потому что у любого человека может быть не сколько мобильных телефонов.. Email - Электронная почта WebAdress - веб сайт Табличка адрес ее также необходимо проектировать исходя, что вам нужно будет делать в будущем Пример: нужно показать всех учителей которые проживают в каком то определенном районе и тд... 2)Дальше идет так сказать деление на роли, тобиш должны быть табличка о типе персоналия т.е ученик, учитель и тд ( как показывает практика ученик может быть учителем Оо) Примерна структура: Id - ID типа персоналия Name - тип персоналия что будет находится в табличке: id name 1 Pupils 2 Teachers и тд... 3) Табличка которая будет содержать информауцию о ключах Персоналии_ТипПерсоналия Пример: структура таблички: Sourse - источник (в данном случе id персоналия) Destination - приемник (в данном случае id типа персоналия) По этой структуре можно понять что это Отношение многие ко многим... можно сделать и один ко многим...мое мнение так не красиво геморойно но все же .... И так, если вы будете делать БД в MSSQL на эту таблчику (Персоналии_ ТипПЕрсоналия) вешается тригер, котрый при добавлении/удалении записи будет заносить/удалять даные из табличек ученики учитиля итд если другая БД это надо сделать самой программой... Пример таблички "Ученики": Pupils: ID - ID строки PersonsID - ID строки песроналия ClassID - ID класса в котором, будет учится ученик Примерная струтура таблички учителя: Teachers: ID - ID строки PersonsID - Id строки с таблички персоналии Т.к у одного учителя может быть не сколько должностей в школе разнесем их по разным табличкам как это я сделал с Персоналиями_ТипПерсоналия Тоже самое сделаем и с классным руководством (поверьте один преподаватель может быть классным руководителем в нескольких классах) Всю струтуру описывать не буду ибо может быть в вашей программе не которых вещей не требуется, да и хотелось, чтобы автор сам чутка напрягся я просто привел кусочек примера и по этому принципу можно сделать все остальные таблички... ps. Для начала собирите всю информацию о том, что должно быть, а чего не должно, а потом уже начинайте проектировать бд и писать саму прогу..... Последний раз редактировалось Mitriy08; 28.11.2008 в 11:28. |
|
28.11.2008, 14:39 | #3 | |
Форумчанин
Регистрация: 05.06.2008
Сообщений: 100
|
да вы правы с начала я собиру инфу
Цитата:
Дело в том что я изучаю этот язык (догоняю группу ) и там хочу создать табицы все токое а интерфейс сделать на Делфи т.е свизать с ним ОК |
|
28.11.2008, 16:03 | #4 | ||
Пользователь
Регистрация: 11.07.2008
Сообщений: 91
|
Цитата:
кароче как соберете всю информацию, что и как должно быть вылаживайте свои предложения... Цитата:
|
||