Информационная подсистема абитуриенты

Общая характеристика и структура проектируемой базы данных, содержание основных таблиц и запросов, предъявляемые требования. Механизм построения информационной и реляционной модели. Описание данных и инициализация, реализация серверного приложения.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 31.03.2015
Размер файла 586,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Курсовая работа

Информационная подсистема абитуриенты

1. Постановка задачи

Разработать информационную подсистему абитуриенты для автоматизации работы приемной комиссии вуза.

2. Анализ задачи

Анкета включает следующие данные об абитуриенте: регистрационный номер; фамилию, имя и отчество; дату рождения; сведения об оконченном среднем учебном заведении Анкета включает следующие данные об абитуриенте: регистрационный номер; фамилию, имя и отчество; дату рождения; сведения об оконченном среднем учебном заведении

3. Информационная модель

Информационная модель предполагает наличие следующих сущностей.

1. Абитуриент - представляет собой информацию об абитуриентах

· ID_абитуриента

· Фамилия

· Имя

· Отчество

· Дата_рождения

· Медаль

· Код_специальности

2. Адрес - представляет собой информацию о месте проживания каждого абитуриента.

· ID_абитуриента

· Индекс

· Территория

· Населенный_пункт

· Улица

· Номер_дома

· Телефон

3. ВУЗ - представляет информацию о специальностях, имеющихся в ВУЗе и дисциплины, необходимые при поступлении.

· Код_специальности

· Дисциплина_1

· Дисциплина_2

· Дисциплина_3

· Дисциплина_4

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)

Код специальности

Дисциплина_1

varchar(20)

Первая дисциплина

Дисциплина_2

varchar(20)

Вторая дисциплина

Дисциплина_3

varchar(20)

Третья дисциплина

Дисциплина_4

varchar(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

go

create procedure addSPEC

@Код_специальности varchar(20),

@Дисциплина_1 varchar(20),

@Дисциплина_2 varchar(20),

@Дисциплина_3 varchar(20),

@Дисциплина_4 varchar(20)

as

begin

set nocount on

if ((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)!=0)

begin

print 'Такая специальность уже имеется'

return (1)

end

begin try

insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4)

values (@Код_специальности,@Дисциплина_1,@Дисциплина_2,@Дисциплина_3,@Дисциплина_4)

print 'Добавлено'

return scope_identity()

end try

begin catch

return (-1)

end catch

end

Рис. 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)

as

begin

set nocount on

if ((select COUNT(*) from Абитуриент where ID_абитуриента=@ID_абитуриента)!=0)

begin

print 'Абитуриент с таким ID уже есть в базе'

return (1)

end

begin try

if ((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)=0)

begin

print 'Такой специальности не существует'

return (1)

end

begin try

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности)

values (@ID_абитуриента,@Фамилия,@Имя,@Отчество,@Дата_рождения,@Медаль,@Код_специальности)

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон)

values (@ID_абитуриента,@Индекс,@Территория,@Населенный_пункт,@Улица,@Номер_дома,@Телефон)

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания)

values (@ID_абитуриента,@СУЗ,@Город,@Дата_окончания)

print 'Добавлено'

return scope_identity()

end try

begin catch

return (-1)

end catch

end try

begin catch

return (-1)

end catch

end

Рис. 6 Выборка данных из таблиц, содержащих данные о добавленном абитуриенте

- представление данных об абитуриентах.

use test

go

create view Абитуриенты

as

select a.ID_абитуриента as 'ID', a. Фамилия as 'Фамилия', a. Имя as 'Имя', a. Отчество as 'Отчество', a. Дата_рождения as 'Д.р.',

a. Медаль as 'Медаль', a. Код_специальности as 'Специальность',

b. Индекс as 'Индекс', b. Территория as 'Территория',

b. Населенный_пункт as 'Город', b. Улица as 'Улица', b. Номер_дома as 'Дом', b. Телефон as 'Телефон',

c. Город as 'Город_СУЗ', c. Дата_окончания as 'Дата_окончания'

from Абитуриент a

inner join Адрес b on a.ID_абитуриента = b.ID_абитуриента

inner join Оконченное_СУЗ c on a.ID_абитуриента = c.ID_абитуриента

go

go

CREATE VIEW ViewOfVoshogdenie

AS

Рис. 7 Представление всей информации об абитуриентах.

use test

go

create view Абитуриенты_с_медалью

as

select a.ID_абитуриента as 'ID', a. Фамилия as 'Фамилия', a. Имя as 'Имя', a. Отчество as 'Отчество', a. Дата_рождения as 'Д.р.',

a. Медаль as 'Медаль', a. Код_специальности as 'Специальность',

b. Индекс as 'Индекс', b. Территория as 'Территория',

b. Населенный_пункт as 'Город', b. Улица as 'Улица', b. Номер_дома as 'Дом', b. Телефон as 'Телефон',

c. Город as 'Город_СУЗ', c. Дата_окончания as 'Дата_окончания'

from Абитуриент a

inner join Адрес b on a.ID_абитуриента = b.ID_абитуриента

inner join Оконченное_СУЗ c on a.ID_абитуриента = c.ID_абитуриента

where a. Медаль='да'

go

Рис. 8 Представление информации об абитуриентах с медалью

Удаление данных:

- Удаление специальности.

create procedure delSPEC

@Код_специальности varchar(20)

as

begin

delete from ВУЗ where Код_специальности=@Код_специальности

print 'Удалено'

end

- Удаление абитуриента.

create procedure delABITUR

@ID_абитуриента varchar(20)

as

begin

delete from Адрес where ID_абитуриента=@ID_абитуриента;

delete from Оконченное_СУЗ where ID_абитуриента=@ID_абитуриента;

delete from Абитуриент where ID_абитуриента=@ID_абитуриента;

print 'Удалено'

end

Коррекция данных:

- Изменение информации о специальности.

create procedure editSPEC

@id varchar(20),

@Дисциплина_1 varchar(20),

@Дисциплина_2 varchar(20),

@Дисциплина_3 varchar(20),

@Дисциплина_4 varchar(20)

as

begin

set nocount on

if ((select COUNT(*) from ВУЗ where Код_специальности=@id)=0)

begin

print 'Такой специальности не существует'

return (-1)

end

begin try

update ВУЗ set Дисциплина_1=@Дисциплина_1, Дисциплина_2=@Дисциплина_2, Дисциплина_3=@Дисциплина_3, Дисциплина_4=@Дисциплина_4

where Код_специальности=@id

print 'Изменено'

end try

begin catch

print error_message()

return (-1)

end catch

end

execute editSPEC '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)

as

begin

set nocount on

if ((select COUNT(*) from Абитуриент where ID_абитуриента=@ID_абитуриента)=0)

begin

print 'Абитуриента с таким ID нет в базе'

return (-1)

end

begin try

if ((select COUNT(*) from ВУЗ where Код_специальности=@Код_специальности)=0)

begin

print 'Такой специальности не существует'

return (1)

end

begin try

update Абитуриент set Фамилия=@Фамилия, Имя=@Имя, Отчество=@Отчество, Дата_рождения=@Дата_рождения, Медаль=@Медаль, Код_специальности=@Код_специальности

where ID_абитуриента=@ID_абитуриента

update Адрес set Индекс=@Индекс, Территория=@Территория, Населенный_пункт=@Населенный_пункт, Улица=@Улица, Номер_дома=@Номер_дома, Телефон=@Телефон

where ID_абитуриента=@ID_абитуриента

update Оконченное_СУЗ set Название=@СУЗ, Город=@Город, Дата_окончания=@Дата_окончания

where ID_абитуриента=@ID_абитуриента

print 'Изменено'

return scope_identity()

end try

begin catch

return (-1)

end catch

end try

begin catch

return (-1)

end catch

end

Приложение

create database Абитуриенты

go

use Абитуриенты

CREATE TABLE Абитуриент (ID_абитуриента varchar (20) NOT NULL, Фамилия varchar (60), Имя varchar (60), Отчество varchar (60), Дата_рождения varchar(20), Медаль varchar(20), Код_специальности varchar(20))

CREATE TABLE Адрес (ID_абитуриента varchar (20), Индекс varchar (20), Территория varchar(20), Населенный_пункт varchar (20), Улица varchar (20), Номер_дома varchar (20), Телефон varchar (10))

CREATE TABLE Оконченное_СУЗ (ID_абитуриента varchar (20), Название varchar (20), Город varchar(20), Дата_окончания varchar(20))

CREATE TABLE ВУЗ (Код_специальности varchar(20) NOT NULL, Дисциплина_1 varchar (20), Дисциплина_2 varchar (20), Дисциплина_3 varchar (20), Дисциплина_4 varchar (20))

go

alter table Абитуриент

add constraint k1 primary key (ID_абитуриента)

alter table ВУЗ

add constraint k2 primary key (Код_специальности)

alter table Адрес

add constraint k3 foreign key (ID_абитуриента) references Абитуриент (ID_абитуриента)

alter table Оконченное_СУЗ

add constraint k4 foreign key (ID_абитуриента) references Абитуриент (ID_абитуриента)

alter table Абитуриент

add constraint k5 foreign key (Код_специальности) references ВУЗ (Код_специальности)

go

insert into

ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('10500', 'Математика', 'Русский', 'Информатика', 'Физика')

insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('10350', 'Математика', 'Русский', 'Биология', 'Химия')

insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('00182', 'Обществознание', 'Русский', 'История', 'Право')

insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('48151', 'Рисунок', 'Русский', 'Математика', 'Иностранный')

insert into ВУЗ (Код_специальности, Дисциплина_1, Дисциплина_2, Дисциплина_3, Дисциплина_4) values ('62342', 'Иностранный', 'Русский', 'Обществознание', 'География')

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('1', 'Шабалин', 'Никита', 'Александрович', '24.03.1992', 'да', '10500')

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('2', 'Немировский', 'Денис', 'Юрьевич', '17.10.1992', 'нет', '10500')

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('3', 'Тутубалин', 'Алексей', 'Сергеевич', '08.02.1993', 'нет', '62342')

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('4', 'Роскрут', 'Руслан', 'Батькович', '27.03.1991', 'да', '00182')

insert into Абитуриент (ID_абитуриента, Фамилия, Имя, Отчество, Дата_рождения, Медаль, Код_специальности) values ('5', 'Крупская', 'Надежда', 'Константиновна', '09.07.1992', 'да', '48151')

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('1', '600025', 'Владимирская обл.', 'г. Владимир', 'Нижняя дуброва', '8', '424437')

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('2', '600014', 'Владимиркая обл.', 'с. Красная Ушна', 'Ленина', '4', '352463')

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('3', '600028', 'Владимирская обл.', 'г. Владимир', 'Лакина', '147б', '249141')

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('4', '600124', 'Ивановская обл.', 'г. Иваново', 'Красноармейская', '42', '421463')

insert into Адрес (ID_абитуриента, Индекс, Территория, Населенный_пункт, Улица, Номер_дома, Телефон) values ('5', '600036', 'Владимирская обл.', 'г. Владимир', 'Суздальский пр-кт', '12', '432412')

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('1', 'Школа №4', 'Владимир', '2007')

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('2', 'Школа №1', 'Красная Ушна', '2007')

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('3', 'Школа №2', 'Владимир', '2007')

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('4', 'Школа №8', 'Иваново', '2008')

insert into Оконченное_СУЗ (ID_абитуриента, Название, Город, Дата_окончания) values ('5', 'Школа №24', 'Владимир', '2008')

go

Размещено на Allbest.ru


Подобные документы

  • Общая характеристика и состав информационных запросов к проектируемой базе данных, требования к ней и внутренняя структура, принципы нормализации и разработка логической модели. Создание таблиц и связей между ними. Язык структурированных запросов.

    курсовая работа [985,6 K], добавлен 22.05.2014

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

    курсовая работа [4,9 M], добавлен 26.07.2013

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

    курсовая работа [380,9 K], добавлен 06.04.2015

  • Теоретические основы разработки приложения для автоматизации данных по Олимпиаде. Основные свойства объектов, связей, их атрибуты. Создание отчета на примере "спортсмены занявшие места с 1 по 3". Структура запросов, таблиц базы данных в Microsoft Access.

    курсовая работа [1,1 M], добавлен 09.12.2013

  • Общая характеристика инфологической модели информационной системы. Знакомство с особенностями проектирования базы данных "Библиотека", анализ основных этапов. Рассмотрение способов составления запросов по выборке информации из таблиц базы данных.

    контрольная работа [831,2 K], добавлен 08.12.2013

  • Понятие базы данных в Microsoft Access, описание таблицы как объекта. Назначение запросов, форм, отчетов и страниц. Макросы и модули в СУБД. Порядок создания базы данных, ввод описания поля. Свойства полей таблиц. Построение реляционной модели данных.

    презентация [389,6 K], добавлен 18.01.2014

  • Минимальные системные требования к техническому и программному обеспечению для применения базы данных. Структура базы данных, создание таблиц (сотрудники, контакты, контракты, клиенты), запросов и форм. Описание действий при работе с базой данных.

    практическая работа [1,0 M], добавлен 13.02.2011

  • Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.

    курсовая работа [981,4 K], добавлен 05.11.2011

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

    курсовая работа [1,7 M], добавлен 18.01.2012

  • Разработка концептуальной модели базы данных "Чемпионат авто": описание предметной области, каталог задач, описание таблиц, схема данных, ER-диаграмма. Проектирование реляционной модели "Спортивный комплекс". Реализация и результат работы базы данных.

    курсовая работа [3,7 M], добавлен 14.06.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.