Вопрос задан 31.08.2018 в 06:33. Предмет Информатика. Спрашивает Pojoga Igor.

Сделала все до изменения ситуации, подскажите как это сделать? Какие новые таблицы нужно создать и

с чем их связать? Вот задание: Описание предметной области Вы работаете в высшем учебном заведении и занимаетесь распределением нагрузки между преподавателями кафедры. В вашем распоряжении имеются сведения о преподавателях кафедры, включающие наряду с анкетными данными информацию об их ученой степени, занимаемой административной должности и стаже работы. Преподаватели вашей кафедры должны обеспечить проведение занятий по некоторым предметам. По каждому из них установлено определенное количество часов. В результате распределения нагрузки у вас должна получиться информация следующего рода: «Такой-то преподаватель проводит занятия по такому-то предмету с такой-то группой». Таблицы Преподаватели (Код преподавателя, Фамилия, Имя, Отчество, Ученая степень, Должность, Стаж). Предметы (Код предмета, Название, Количество часов). Нагрузка (Код преподавателя, Код предмета, Номер группы). !!!!ВОТ ДО ЭТОГО МОМЕНТА ВСЕ СДЕЛАНО!!!! Развитие постановки задачи Теперь ситуация изменилась. Выяснилось, что все проводимые занятия делятся на лекционные и практические. По каждому виду занятий устанавливается свое количество часов. Кроме того, данные о нагрузке нужно хранить несколько лет. Внести в структуру таблиц изменения, учитывающие эти факты, и изменить существующие запросы. Добавить новые запросы.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Менько Алла.
У вас уже есть таблица с данными можно создать 2 запроса с справочником где будет взаимодействие с вашей таблицей и не будет такого что в 13:00 преподователь ведет пары в разных классах делаете сперва 1 запрос на лекции где он делит их согласно вашим предпочтениям далее второй запрос практика где так же указываете данные из таблиц и запросов потом немножко корректируете все проверяете и сохраняете запрос и жмете выполнить должно получится что он поделит их согласно установленного расписания вами в определенные дни указанные вами 
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Описание предметной области

Вы работаете в высшем учебном заведении и занимаетесь распределением нагрузки между преподавателями кафедры. В вашем распоряжении имеются сведения о преподавателях кафедры, включающие наряду с анкетными данными информацию об их ученой степени, занимаемой административной должности и стаже работы. Преподаватели вашей кафедры должны обеспечить проведение занятий по некоторым предметам. По каждому из них установлено определенное количество часов. В результате распределения нагрузки у вас должна получиться информация следующего рода: "Такой-то преподаватель проводит занятия по такому-то предмету с такой-то группой".

Таблицы

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

1. Преподаватели: - Код преподавателя - Фамилия - Имя - Отчество - Ученая степень - Должность - Стаж

2. Предметы: - Код предмета - Название - Количество часов

3. Нагрузка: - Код преподавателя - Код предмета - Номер группы

Изменения в структуре таблиц

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

1. Нагрузка: - Добавьте новое поле "Тип занятия" для указания лекционного или практического занятия. - Добавьте новое поле "Количество часов" для указания количества часов, отведенных на каждый тип занятия.

Изменение существующих запросов и добавление новых запросов

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

1. Изменение существующих запросов: - Измените существующие запросы, чтобы они учитывали новые поля "Тип занятия" и "Количество часов" в таблице "Нагрузка". - Обновите запросы, чтобы они отображали информацию о типе занятия (лекционное или практическое) и количестве часов для каждого преподавателя и предмета.

2. Добавление новых запросов: - Создайте новые запросы для получения информации о преподавателях, проводящих лекционные занятия, и преподавателях, проводящих практические занятия. - Создайте запросы для получения информации о преподавателях, проводящих занятия с определенной группой студентов. - Создайте запросы для получения информации о преподавателях, проводящих занятия по определенному предмету.

Примеры запросов: - Получить список преподавателей, проводящих лекционные занятия: ```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название FROM Преподаватели INNER JOIN Нагрузка ON Преподаватели.Код_преподавателя = Нагрузка.Код_преподавателя INNER JOIN Предметы ON Нагрузка.Код_предмета = Предметы.Код_предмета WHERE Нагрузка.Тип_занятия = 'лекционное' ```

- Получить список преподавателей, проводящих практические занятия: ```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название FROM Преподаватели INNER JOIN Нагрузка ON Преподаватели.Код_преподавателя = Нагрузка.Код_преподавателя INNER JOIN Предметы ON Нагрузка.Код_предмета = Предметы.Код_предмета WHERE Нагрузка.Тип_занятия = 'практическое' ```

- Получить список преподавателей, проводящих занятия с группой студентов номер 1: ```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название FROM Преподаватели INNER JOIN Нагрузка ON Преподаватели.Код_преподавателя = Нагрузка.Код_преподавателя INNER JOIN Предметы ON Нагрузка.Код_предмета = Предметы.Код_предмета WHERE Нагрузка.Номер_группы = 1 ```

- Получить список преподавателей, проводящих занятия по предмету "Математика": ```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название FROM Преподаватели INNER JOIN Нагрузка ON Преподаватели.Код_преподавателя = Нагрузка.Код_преподавателя INNER JOIN Предметы ON Нагрузка.Код_предмета = Предметы.Код_предмета WHERE Предметы.Название = 'Математика' ```

Это лишь примеры запросов, и вам следует адаптировать их под вашу конкретную базу данных и требования.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

Новые таблицы:

1. ВидыЗанятий (КодВида, Название, КоличествоЧасов) - КодВида: уникальный идентификатор вида занятия. - Название: название вида занятия (например, "Лекция", "Практика"). - КоличествоЧасов: количество часов, отведенных на данный вид занятий.

2. НагрузкаПоВидам (КодПреподавателя, КодПредмета, НомерГруппы, КодВида, Год) - КодВида: внешний ключ, связанный с таблицей ВидыЗанятий. - Год: год, на который относится нагрузка.

Изменения в существующих таблицах:

Таблица Нагрузка:

Добавим КодВида в таблицу Нагрузка.

```plaintext Нагрузка (КодПреподавателя, КодПредмета, НомерГруппы, КодВида, Год) ```

Изменения в существующих запросах:

1. Запрос "НагрузкаПреподавателя": - Теперь он должен учитывать новые данные о видах занятий.

```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название, Группы.Номер, ВидыЗанятий.Название AS ВидЗанятия, Нагрузка.Год FROM Преподаватели JOIN Нагрузка ON Преподаватели.Код = Нагрузка.КодПреподавателя JOIN Предметы ON Нагрузка.КодПредмета = Предметы.Код JOIN Группы ON Нагрузка.НомерГруппы = Группы.Номер JOIN ВидыЗанятий ON Нагрузка.КодВида = ВидыЗанятий.КодВида; ```

2. Запрос "ОбщаяНагрузка": - Теперь учитываем в новой таблице ВидыЗанятий.

```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, SUM(ВидыЗанятий.КоличествоЧасов) AS ОбщаяНагрузка FROM Преподаватели JOIN Нагрузка ON Преподаватели.Код = Нагрузка.КодПреподавателя JOIN ВидыЗанятий ON Нагрузка.КодВида = ВидыЗанятий.КодВида GROUP BY Преподаватели.Код, Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество; ```

3. Запрос "НагрузкаПоГодам": - Учитываем новую таблицу НагрузкаПоВидам.

```sql SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, ВидыЗанятий.Название AS ВидЗанятия, НагрузкаПоВидам.Год FROM Преподаватели JOIN НагрузкаПоВидам ON Преподаватели.Код = НагрузкаПоВидам.КодПреподавателя JOIN ВидыЗанятий ON НагрузкаПоВидам.КодВида = ВидыЗанятий.КодВида; ```

Эти изменения позволят вам учесть новые аспекты в предметной области и работать с данными о нагрузке более гибко. Пожалуйста, убедитесь, что вы адаптировали запросы в соответствии с вашей базой данных.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос