Информационная подсистема абитуриенты
Курсовая работа
Информационная подсистема абитуриенты
1.Постановка задачи
Разработать информационную подсистему абитуриенты для автоматизации работы приемной комиссии вуза.
2.Анализ задачи
Анкета включает следующие данные об абитуриенте: регистрационный номер; фамилию, имя и отчество; дату рождения; сведения об оконченном среднем учебном заведении Анкета включает следующие данные об абитуриенте: регистрационный номер; фамилию, имя и отчество; дату рождения; сведения об оконченном среднем учебном заведении
3.Информационная модель
Информационная модель предполагает наличие следующих сущностей.
.Абитуриент - представляет собой информацию об абитуриентах
·ID_абитуриента
·Фамилия
·Имя
·Отчество
·Дата_рождения
·Медаль
·Код_специальности
.Адрес - представляет собой информацию о месте проживания каждого абитуриента.
·ID_абитуриента
·Индекс
·Территория
·Населенный_пункт
·Улица
·Номер_дома
·Телефон
.ВУЗ - представляет информацию о специальностях, имеющихся в ВУЗе и дисциплины, необходимые при поступлении.
·Код_специальности
·Дисциплина_1
·Дисциплина_2
·Дисциплина_3
·Дисциплина_4
.Оконченное_СУЗ - представляет собой информацию об СУЗе, который окончил абитуриент.
·ID_абитуриента
·Название
·Город
·Дата_окончания
4.Реляционная модель
Преобразуем информационную модель в реляционную (рис. 1 Диаграмма).
Табл.1. Описание таблиц
Имя таблицыПолеТип поляОписание полейАбитуриентID_абитуриентаvarchar (20)Код абитуриентаФамилияvarchar(60)ФамилияИмяvarchar(60)ИмяОтчествоvarchar(60)ОтчествоДата_рожденияvarchar (20)д.р. абитуриентаМедальvarchar(20)Наличие медалиКод_специальностиvarchar (20)Специальность, на которую поступает абитуриентАдресID_абитуриентаvarchar (20)Код абитуриентаИндексvarchar (20)Его индексТерриторияvarchar(20)Территория проживанияНаселенный_пуктvarchar(20)Населенный пунктУлицаvarchar(20)УлицаНомер_домаvarchar(20)Номер домаТелефонvarchar(10)Номер телефонаВУЗКод_специальностиvarchar (20)Код специальностиДисциплина_1varchar(20)Первая дисциплинаДисциплина_2varchar(20)Вторая дисциплинаДисциплина_3varchar(20)Третья дисциплинаДисциплина_4varchar(20)Четвертая дисциплинаОконченное_ СУЗID_абитуриентвvarchar (20)Код абитуриентаНазваниеvarchar(20)Название СУЗГородvarchar(20)Город, в котором находится СУЗДата_окончаничvarchar (20)Год окончания СУЗа
Для хранения адреса абитуриента сущаствует таблица Адрес. Адрес имеет внешний ключ ID_абитуриента, который связан с ID_абитуриента в основной таблице Абитуриенты.
Для хранения информации об оконченном, абитуриентом, СУЗ, имеется таблица Оконченное_СУЗ. Она имеет внешний ключ ID_абитуриента, который связан с ID_абитуриента в основной таблице Абитуриенты.
Для хранения имеющихся в ВУЗе специальностей и дисциплин, необходимых для поступления на них, существует таблица ВУЗ. Таблица Абитуриенты имеет внешний ключ Код_специальности, который связан Код_специальности таблицы ВУЗ.
Рис. 1. Описание данных и инициализация БД
5.Описание данных и инициализация БД
Занесение данных в таблицы и запросы к ним:
·заносятся данные о 5 специальностях (рис. 2);
·заносятся 5 записей об абитуриентах (рис. 3);
·заносятся 5 записей об адресах абитуриентов (рис. 4);
·заносятся 5 записей об оконченных, абитуриентами, СУЗ (рис. 5);
Рис. 3 Выборка данных из таблицы Абитуриент после занесения начальных данных
Рис. 4 Выборка данных из таблицы Арес после занесения начальных данных
Рис. 5 Выборка данных из таблицы СУЗ после занесения начальных данных
6.Реализация серверного приложения и демонстрация его работы
Процедуры добавления данных в таблицы:
Добавление Новой специальности, проверка ее существования
use test
procedure addSPEC
@Код_специальности varchar(20),
@Дисциплина_1 varchar(20),
@Дисциплина_2 varchar(20),
@Дисциплина_3 varchar(20),
@Дисциплина_4 varchar(20)nocount on((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)!=0)
begin'Такая специальность уже имеется'(1)tryinto ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4)
values (@Код_специальности,@Дисциплина_1,@Дисциплина_2,@Дисциплина_3,@Дисциплина_4)'Добавлено'scope_identity()trycatch(-1)
end catch
Рис. 5 Выборка данных из таблицы ВУЗ после внесения новых данных
Добавление нового абитуриента. Проверка наличия абитуриента с таким ID в базе, проверка наличия такой специальности в базе.
create procedure addABITUR
@ID_абитуриента varchar(20),
@Фамилия varchar(60),
@Имя varchar(60),
@Отчество varchar(60),
@Дата_рождения varchar(20),
@Медаль varchar(20),
@Код_специальности varchar(20),
@Индекс varchar(20),
@Территория varchar(20),
@Населенный_пункт varchar(20),
@Улица varchar(20),
@Номер_дома varchar(20),
@Телефон varchar(20),
@СУЗ varchar(20),
@Город varchar(20),
@Дата_окончания varchar(20)nocount on((select COUNT(*) from Абитуриент where ID_абитуриента=@ID_абитуриента)!=0)
print 'Абитуриент с таким ID уже есть в базе'
return (1)try((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)=0)
print 'Такой специальности не существует'
return (1)
end
begin try
insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности)
values (@ID_абитуриента,@Фамилия,@Имя,@Отчество,@Дата_рождения,@Медаль,@Код_специальности) into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон)
values (@ID_абитуриента,@Индекс,@Территория,@Населенный_пункт,@Улица,@Номер_дома,@Телефон) into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания)
values (@ID_абитуриента,@СУЗ,@Город,@Дата_окончания)'Добавлено'scope_identity()trycatch(-1)catchtrycatch(-1)catch
Рис. 6 Выборка данных из таблиц, содержащих данные о добавленном абитуриенте
представление данных об абитуриентах.
use testview Абитуриентыa.ID_абитуриента as 'ID', a. Фамилия as 'Фамилия', a. Имя as 'Имя', a. Отчество as 'Отчество', a. Дата_рождения as 'Д.р.',. Медаль as 'Медаль', a. Код_специальности as 'Специальность',. Индекс as 'Индекс', b. Территория as 'Территория',. Населенный_пункт as 'Город', b. Улица as 'Улица', b. Номер_дома as 'Дом', b. Телефон as 'Телефон',. Город as 'Город_СУЗ', c. Дата_окончания as 'Дата_окончания'Абитуриент ajoin Адрес b on a.ID_абитуриента = b.ID_абитуриентаjoin Оконченное_СУЗ c on a.ID_абитуриента = c.ID_абитуриента
goVIEW ViewOfVoshogdenie
Рис. 7 Представление всей информации об абитуриентах.
use testview Абитуриенты_с_медальюa.ID_абитуриента as 'ID', a. Фамилия as 'Фамилия', a. Имя as 'Имя', a. Отчество as 'Отчество', a. Дата_рождения as 'Д.р.',
a. Медаль as 'Медаль', a. Код_специальности as 'Специальность',. Индекс as 'Индекс', b. Территория as 'Территория',. Населенный_пункт as 'Город', b. Улица as 'Улица', b. Номер_дома as 'Дом', b. Телефон as 'Телефон',. Город as 'Город_СУЗ', c. Дата_окончания as 'Дата_окончания'Абитуриент ajoin Адрес b on a.ID_абитуриента = b.ID_абитуриентаjoin Оконченное_СУЗ c on a.ID_абитуриента = c.ID_абитуриентаa. Медаль='да'
Рис. 8 Представление информации об абитуриентах с медалью
Удаление данных:
- Удаление специальности.
procedure delSPEC
@Код_специальности varchar(20)from ВУЗ where Код_специальности=@Код_специальности'Удалено'
- Удаление абитуриента.
procedure delABITUR
@ID_абитуриента varchar(20)from Адрес where ID_абитуриента=@ID_абитуриента;from Оконченное_СУЗ where ID_абитуриента=@ID_абитуриента;from Абитуриент where ID_абитуриента=@ID_абитуриента;'Удалено'
Коррекция данных:
- Изменение информации о специальности.
procedure editSPEC
@id varchar(20),
@Дисциплина_1 varchar(20),
@Дисциплина_2 varchar(20),
@Дисциплина_3 varchar(20),
@Дисциплина_4 varchar(20)nocount on((select COUNT(*) from ВУЗ where Код_специальности=@id)=0)'Такой специальности не существует'(-1)tryВУЗ set Дисциплина_1=@Дисциплина_1, Дисциплина_2=@Дисциплина_2, Дисциплина_3=@Дисциплина_3, Дисциплина_4=@Дисциплина_4Код_специальности=@id'Изменено'trycatcherror_message()(-1)catcheditSPEC '10350', 'Химия', 'Физика', 'Биология', 'Русский'
Рис. 9 Выборка из таблицы ВУЗ после выполнения скрипта на изменение
- Изменение информации об абитуриенте.
create procedure editABITUR
@ID_абитуриента varchar(20),
@Фамилия varchar(60),
@Имя varchar(60),
@Отчество varchar(60),
@Дата_рождения varchar(20),
@Медаль varchar(20),
@Код_специальности varchar(20),
@Индекс varchar(20),
@Территория varchar(20),
@Населенный_пункт varchar(20),
@Улица varchar(20),
@Номер_дома varchar(20),
@Телефон varchar(20),
@СУЗ varchar(20),
@Город varchar(20),
@Дата_окончания varchar(20)nocount on((select COUNT(*) from Абитуриент where ID_абитуриента=@ID_абитуриента)=0)
print 'Абитуриента с таким ID нет в базе'
return (-1)try((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)=0)
print 'Такой специальности не существует'
return (1)tryАбитуриент set Фамилия=@Фамилия, Имя=@Имя, Отчество=@Отчество, Дата_рождения=@Дата_рождения, Медаль=@Медаль, Код_специальности=@Код_специальностиID_абитуриента=@ID_абитуриентаАдрес set Индекс=@Индекс, Территория=@Территория, Населенный_пункт=@Населенный_пункт, Улица=@Улица, Номер_дома=@Номер_дома, Телефон=@Телефон ID_абитуриента=@ID_абитуриента
update Оконченное_СУЗ set Название=@СУЗ, Город=@Город, Дата_окончания=@Дата_окончания
where ID_абитуриента=@ID_абитуриента
print 'Изменено'scope_identity()trycatch(-1)catchtrycatch(-1)catch
Приложение
create database АбитуриентыАбитуриенты
TABLE Абитуриент (ID_абитуриента varchar (20) NOT NULL, Фамилия varchar (60), Имя varchar (60), Отчество varchar (60), Дата_рождения varchar(20), Медаль varchar(20), Код_специальности varchar(20))TABLE Адрес (ID_абитуриента varchar (20), Индекс varchar (20), Территория varchar(20), Населенный_пункт varchar (20), Улица varchar (20), Номер_дома varchar (20), Телефон varchar (10))TABLE Оконченное_СУЗ (ID_абитуриента varchar (20), Название varchar (20), Город varchar(20), Дата_окончания varchar(20))TABLE ВУЗ (Код_специальности varchar(20) NOT NULL, Дисциплина_1 varchar (20), Дисциплина_2 varchar (20), Дисциплина_3 varchar (20), Дисциплина_4 varchar (20))
table Абитуриентconstraint k1 primary key (ID_абитуриента)table ВУЗconstraint k2 primary key (Код_специальности)table Адресconstraint k3 foreign key (ID_абитуриента) references Абитуриент (ID_абитуриента)table Оконченное_СУЗconstraint k4 foreign key (ID_абитуриента) references Абитуриент (ID_абитуриента)table Абитуриентconstraint k5 foreign key (Код_специальности) references ВУЗ (Код_специальности)
into
ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('10500', 'Математика', 'Русский', 'Информатика', 'Физика')
insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('10350', 'Математика', 'Русский', 'Биология', 'Химия')into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('00182', 'Обществознание', 'Русский', 'История', 'Право')into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('48151', 'Рисунок', 'Русский', 'Математика', 'Иностранный')into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('62342', 'Иностранный', 'Русский', 'Обществознание', 'География')
into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('1', 'Шабалин', 'Никита', 'Александрович', '24.03.1992', 'да', '10500')into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('2', 'Немировский', 'Денис', 'Юрьевич', '17.10.1992', 'нет', '10500')into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('3', 'Тутубалин', 'Алексей', 'Сергеевич', '08.02.1993', 'нет', '62342')into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('4', 'Роскрут', 'Руслан', 'Батькович', '27.03.1991', 'да', '00182')into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('5', 'Крупская', 'Надежда', 'Константиновна', '09.07.1992', 'да', '48151')
into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('1', '600025', 'Владимирская обл.', 'г. Владимир', 'Нижняя дуброва', '8', '424437')into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('2', '600014', 'Владимиркая обл.', 'с. Красная Ушна', 'Ленина', '4', '352463')into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('3', '600028', 'Владимирская обл.', 'г. Владимир', 'Лакина', '147б', '249141')into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('4', '600124', 'Ивановская обл.', 'г. Иваново', 'Красноармейская', '42', '421463')into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('5', '600036', 'Владимирская обл.', 'г. Владимир', 'Суздальский пр-кт', '12', '432412')
into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('1', 'Школа №4', 'Владимир', '2007')into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('2', 'Школа №1', 'Красная Ушна', '2007')into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('3', 'Школа №2', 'Владимир', '2007')into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('4', 'Школа №8', 'Иваново', '2008')into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('5', 'Школа №24', 'Владимир', '2008')
go
Больше работ по теме:
Предмет: Информационное обеспечение, программирование
Тип работы: Курсовая работа (т)
Новости образования
КОНТАКТНЫЙ EMAIL: [email protected]
Скачать реферат © 2017 | Пользовательское соглашение
ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ