Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> База данных по студентам, помогите решить задачу 
V
    Опции темы
sssssss7
Дата 17.2.2009, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Помогите решить задачу:

1.табл. по студентам (idстудента, id группы, фио, адрес, паспорт и.тд.)
2.табл. по группам (id группы,Юристы, Экономисты и.тд.)

Нужно сделать что то вроде выполнене учебного плана, для каждого из студентов... следующего вида...

Студент,наименнование предмета, кол-во часов, оценка.

В чём проблема)... 

В каждом году 2 семестра с разными экзаменационными предметами +разными предметами для каждой группы +разными для каждого курса smile .


Как правильно сформировать таблицы чтоб можно было выводить и дополнять такую информацию. Например.

2008 год
1курс
2семестр
Экономисты
Иванов
список предметов (для Экономистов 1курса второго семестра) и оценок

уже 5 день  smile  не могу построить логику связи таблиц ..  smile 
База на MySql клиента делаю на Delphi2009...


PM MAIL   Вверх
LSD
Дата 17.2.2009, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 24
Всего: 538



Добавляешь таблицу экзаменационный предмет: ид, наименование дисциплины, количество часов.
Потом добавляешь кросс: ид_студента, ид_экзаменационного_предмета, оценка, номер семестра.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
sssssss7
Дата 17.2.2009, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Цитата(LSD @  17.2.2009,  14:20 Найти цитируемый пост)
ид_студента, ид_экзаменационного_предмета, оценка, номер семестра. 


а год? курс? название специальности?... и как потом вести эту таблицу руками всё вбивать и номер семетра и год и курс... 
я вот думаю как бы это всё сформировать чтоб в последствии при занесении нового студента в базу и присоение ему группы автоматом выводились предметы которые ему нужно сдавать в этом семестре и на этом курсе.. прошу прощения если не совсем точно излагаю мыслю уже у самого голова как таблица стала))


Это сообщение отредактировал(а) sssssss7 - 17.2.2009, 14:31
PM MAIL   Вверх
LSD
Дата 17.2.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 24
Всего: 538



Цитата(sssssss7 @  17.2.2009,  14:26 Найти цитируемый пост)
а год? курс? название специальности?

Номер семестра однозначно определяет курс, а год сдачи определяется исходя из года поступления студента и на какой курс он поступил. Но при желании, год поступления можно добавить. Название специальности это вообще атрибут студента, а не дисциплины.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Akina
Дата 17.2.2009, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 13
Всего: 454



Должна быть таблица "Учебный план". В ней - идентификаторы семестра, группы, предмета, формы подачи, формы контроля и т.д., и т.п.
И должна быть таблица "Индивидуальный учебный план", куда копируется всё то же, но уже для каждого отдельного студента (т.е. там нет ИД группы, а если ИД студента), плюс добавляются поля для итогов обучения по каждой строке плана.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
sssssss7
Дата 17.2.2009, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Цитата

Название специальности это вообще атрибут студента, а не дисциплины.


ну так по названию спец.  курса и семестра.. выводятся данные о нужных дисциплинах

Цитата

Akina
Должна быть таблица "Учебный план". В ней - идентификаторы семестра, группы, предмета, формы подачи, формы контроля и т.д., и т.п.
И должна быть таблица "Индивидуальный учебный план", куда копируется всё то же, но уже для каждого отдельного студента (т.е. там нет ИД группы, а если ИД студента), плюс добавляются поля для итогов обучения по каждой строке плана.


Спасибо перевариваем... это из личного опыта я так понял)

Это сообщение отредактировал(а) sssssss7 - 17.2.2009, 14:46
PM MAIL   Вверх
LSD
Дата 17.2.2009, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 24
Всего: 538



Цитата(sssssss7 @  17.2.2009,  14:43 Найти цитируемый пост)
ну так по названию спец.  курса и семестра.. выводятся данные о нужных дисциплинах

Это уже учебный план (про него Akina написал). Который зависит от выбранной специализации, но может быть и индивидуальным, например при втором высшем часть предметов могут перезачесть.



--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
sssssss7
Дата 17.2.2009, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Цитата

Должна быть таблица "Учебный план". В ней - идентификаторы семестра, группы, предмета, формы подачи, формы контроля и т.д., и т.п.
И должна быть таблица "Индивидуальный учебный план", куда копируется всё то же, но уже для каждого отдельного студента (т.е. там нет ИД группы, а если ИД студента), плюс добавляются поля для итогов обучения по каждой строке плана.

табл. учебный план

id Специальность | курс | семестр |id предмет |..
_____________________________________
юристы                 |1       | 1            |матем      |...
_____________________________________
юристы                 |1       |1             | русский | ..
_____________________________________
...итд по юристам 1 курс 1 семестра...
потом тоже самое токо для 1курс 2семе.. итд до 6 курса и для каждой группы ???
далее табл. индивидуальный учебный план ... 

id студента         | курс | семестр |id предмет |оценка..
_____________________________________
Иванов                |1       | 1            |матем        |5         |...
_____________________________________
Иванов                 |1       |1             | русский     |5     | ..
_____________________________________
если так для каждого студента в дальнейшем для  разных семестров и разных курсов хранить этож таблица получится не реально огромная и зачем делать первую общию таблицу???

ааа запутался .. smile 

Это сообщение отредактировал(а) sssssss7 - 17.2.2009, 15:41
PM MAIL   Вверх
Akina
Дата 17.2.2009, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 13
Всего: 454



Цитата(sssssss7 @  17.2.2009,  16:24 Найти цитируемый пост)
как оценки студентов хранить в базе?? 

Я же уже говорил
Цитата(Akina @  17.2.2009,  15:43 Найти цитируемый пост)
плюс добавляются поля для итогов обучения по каждой строке плана. 

Цитата

ID ID_stud ID_subj ID_test Mark ...
 1       1       1       1    5
 2       1       1       2 Зачёт
 3       2       1       1    3
 4       2       1       2 Зачёт
 5       3       1       1    -
 6       3       1       2    -

т.е. студент нумер 3 пока ничего не сдал...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
sssssss7
Дата 17.2.2009, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Akina 
можешь дать инфу (я так понял у тебя есть реальный пример) откуда взял??? или скинуть в асю или на почту. очень нужно

в твоем примере всё понятно.... но по твоему примеру получается нельзя сделать отбор по курсу и семестру или группе, если добавить эти поля то зачем тогда делать первую таблицу Общию..

Это сообщение отредактировал(а) sssssss7 - 17.2.2009, 16:13
PM MAIL   Вверх
sssssss7
Дата 18.2.2009, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Всем спасибо!!! вроде разобрался и сделал как подсказали Akina и LSD... мое не понимание вопроса обьесняется стандартным для всех новичков отсутствием желания более внимательно и углубленно изучить матчасть smile ...  smile 

Возник вот такой простой вопрос из примера выше, нужно ли делать маленькую таблицу из двух значений я про IDtest... к примеру таблица вид сдачи с двумя столбцами IDtest, вид сдачи и двумя строками Зачет и Экзамен... Я понял что по возможности нужноо избегать связи между таблицами многие–ко–многим и приводить их к один–ко–многим... но тут вроде всего два значения.. или я что то не допонял опять)))

Это сообщение отредактировал(а) sssssss7 - 18.2.2009, 15:58
PM MAIL   Вверх
Akina
Дата 18.2.2009, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 13
Всего: 454



Цитата(sssssss7 @  18.2.2009,  16:57 Найти цитируемый пост)
Возник вот такой простой вопрос из примера выше, нужно ли делать маленькую таблицу из двух значений я про IDtest... к примеру таблица вид сдачи с двумя столбцами IDtest, вид сдачи и двумя строками Зачет и Экзамен... Я понял что по возможности нужноо избегать связи между таблицами многие–ко–многим и приводить их к один–ко–многим... но тут вроде всего два значения.. или я что то не допонял опять)))

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


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
sssssss7
Дата 18.2.2009, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 3.2.2009

Репутация: нет
Всего: нет



Вопросов больше нет... задача решена))) спасибо..

 smile  Vingrad просто супер форум, спасибА!!! С меня фура виртуального пивА (чтоб в рифму) smile 

Это сообщение отредактировал(а) sssssss7 - 18.2.2009, 16:24
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0628 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.