Информационная система для предметной области “Поликлиника”

Автор работы: Пользователь скрыл имя, 16 Февраля 2013 в 15:39, курсовая работа

Описание работы

SQL символизирует собой структурированный язык запросов. Это язык, который дает возможность создавать и работать в реляционных базах данных, которые являются наборами связанной информации сохраняемой в таблицах.
Мир БД становится все более и более единым, что привело к необходимости создания стандартного языка, который мог бы использоваться для функционирования в большом количестве различных видов компьютерных сред. Стандартный язык позволит пользователям, знающим один набор команд, использовать их, чтобы создавать, отыскивать, изменять, и передавать информацию, независимо от того, работают ли они на персональном компьютере, сетевой рабочей станции, или на универсальной ЭВМ.
В нашем все более и более взаимосвязанном компьютерном мире, пользователь, снабженный таким языком, имеет огромное преимущество в использов

Содержание работы

Введение……………….………………………………………………………...
1 Информационная система для предметной области “Поликлиника” ….....
1.1 Анализ предметной области………………………………………….….
1.2 Анализ информационных задач…………...……….….…………….......
1.3 Выработка требований и ограничений …………………………………
1.4 Проектирование базы данных …………………….…………………….
1.5 Программная реализация проекта базы данных ……………………….
1.6 Триггеры…………………………………………………………………
1.7 Запросы ……..……………………………………………………………
1.8 Представления……………………………………………………………
Заключение…………………………………………………………..………….
Список использованных источников………………………………..…..……
Приложение А Текст программы создания базы данных....……….………...
Приложение Б Диаграмма базы данных……………………………………...
Приложение В Ввод тестовых данных...……………………………………..
Приложение Г Программная реализация триггеров..………………………..
Приложение Д Программная реализация запросов……...………………….
Приложение Е Программная реализация представлений и запросов к ним
Приложение Ж Интерфейс для работы с информационной системой……..

Файлы: 1 файл

СУБД Контрольная.docx

— 3.15 Мб (Скачать файл)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сущность «Мед. персонал» (Med_personal)

 

Имя столбца

Содержательное описание

Тип данных

Размерность

ОДЗ

Возможность Null

Роль

Пример

Number_

personala

персонала

int

6

[0..9]

нет

PrimaryKey

1

Number_

diploma

диплома

int

6

[0..9]

нет

Attribute

123456

FIO_

personala

ФИО

персонала

varchar

(30)

30

[А..Я,

а..я]

нет

Attribute

Иванов 

Иван

Иванович

DomАdress

домашний

адрес

varchar

(35)

35

[А..Я,

а..я]

[0..9]

нет

Attribute

Кирова 45

Data_

rogdenia

дата рождения

varchar

(10)

10

[0..9]

нет

Attribute

11.11.1987

ZP

Зарплата

int

5

[0..9]

нет

Attribute

6000

Number_ dolgnosti

должности

int

6

[0..9]

нет

ForeignKey

1

Number_

specialista

специалиста

int

6

[0..9]

нет

ForeignKey

1


 

 

Сущность «Вид приема» (Vid_priema)

 

Имя столбца

Содержательное описание

Тип данных

Размерность

ОДЗ

Возможность Null

Роль

Пример

Number

№ приема

int

6

[0..9]

нет

PrimaryKey

1

Name_

priema

название 

приема

varchar

(20)

20

[0..9]

нет

Attribute

по записи


 

 

 

 

 

 

 

 

 

 

 

 

 

Сущность «Специалист» (Specialist)

 

Имя столбца

Содержательное описание

Тип данных

Размерность

ОДЗ

Возможность Null

Роль

Пример

Number_

specialista

специалиста

int

6

[0..9]

нет

PrimaryKey

1

Name_

specialista

название 

специалиста

varchar

(20)

20

[0..9]

нет

Attribute

Окулист


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.5   Программная реализация проекта базы данных

На данном этапе использовались следующие операторы:

  1. CREATE DATABASE – создание базы данных;
  2. CREATE TABLE – создание таблицы;
  3. INSERT  INTO TABLE– заполнение таблицы;
  4. CREАTE TRIGGER – создание триггера;
  5. CREATE VIEW – создание представления

Текст программы создания базы данных приведен в приложении А.

Для спроектированной базы данных построена  диаграмма, которая приведена в  приложении Б.

Текст программы ввода текстовых  данных  приведен в приложении В.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.6   Триггеры

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

Компоненты триггера:

  1. ограничения, для реализации которых создается триггер;
  2. событие, которое характеризует возникновение ситуации, требующей проверки ограничений;
  3. предусмотренное действие, которое осуществляется за счет выполнения процедуры или последовательности процедур, с помощью которых реализуется логика, требуемая для реализации ограничений.

Типы триггеров:

  1. INSERT – определяет действия, которые будут производиться после добавления записей в таблицу;
  2. UPDATE – определяет действия, которые будут производиться после обновления записей в таблице;
  3. DELETE – определяет действия, которые будут производиться после удаления записей из таблицы.

Преимущества  использования триггеров:

  1. триггер всегда выполняется при реализации действий:
  2. при необходимости триггер можно менять централизовано, непосредственно в базе данных;
  3. система обработки данных, использующая триггер, обладает лучшей переносимостью в архитектуру «клиент – сервер».

 

В курсовой работе разработаны следующие  триггеры:

  1. триггер Proverka_ZP, осуществляющий проверку зарплаты;

2) триггер Priem, осуществляющий проверку наличия записи к какому-либо специалисту на определенное время;

3) триггер Proverka_vozrasta_sotrudnika, срабатывающий при добавлении сотрудника в базу.

Программная реализация триггеров приведена в приложении Г.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.7   Запросы

Запрос - команда, которая задается программе БД, и которая сообщает ей, чтобы она вывела определенную информацию из таблиц в память. Эта информация обычно посылается непосредственно на экран компьютера.

Запросы выполняются с помощью  команды select. В общем случае, команда SELECT начинается с ключевого слова SELECT, сопровождаемого пробелом. После этого должен следовать список имен столбцов, которые вы хотите видеть, отделяемые запятыми. Если вы хотите видеть все столбцы таблицы, вы можете заменить этот список звездочкой (*). Ключевое слово FROM следующее далее, сопровождается пробелом и именем таблицы, к которой делается запрос. В заключение, точка с запятой ( ; ) должна использоваться, чтобы закончить запрос и указать что команда готова к выполнению. [1]

Список запросов:

  1. Вывести весь мед. персонал;
  2. Вывести всех пациентов, старше 30 лет;
  3. Вывести всех врачей – окулистов, старше 40 лет и работающих в поликлиники № 2;
  4. Вывести пациентов, которые записаны на 15.05.2008 на прием к хирургу;
  5. Вывести мед.персонал с соответствующими должностями;
  6. Вывести мед.персонал  с зарплатой выше средней;
  7. Вывести пациентов, которые записаны на прием к врачу Петрову П.П.;
  8. Вывести количество мед. персонала, который получает зарплату выше средней и среднее значение зарплаты;
  9. Вывести все записи приема по направлению;
  10. По фамилии врача определить фамилии его пациентов 

Программная реализация запросов приведена  в приложении Д.

 

 

 

1.8   Представления

Представления –  это таблицы, чье содержание выбирается или получается из других таблиц. Они работают в запросах точно также как и основные таблицы, но не содержат никаких собственных данных. Представления - подобны окнам, через которые просматривается информация (как она есть, или в другой форме), которая фактически хранится в базовой таблице. Представление - это фактически запрос, который выполняется всякий раз, когда представление становится темой команды. Вывод запроса при этом в каждый момент становится содержанием представления. [2]

В курсовой работе были разработаны  следующие представления:

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

К представлениям разработаны следующие запросы:

  1. выбрать сотрудников, которые работают медсестрами;
  2. выбрать сотрудников, у которых зарплата ниже средней.

Программная реализация представлений  и запросов к ним приведена  в приложении Е.

 

 

 

 

 

 

 

 

 

Заключение

В ходе курсового проектирования создана информационная система для предметной области “Поликлиника”. В ходе выполнения курсовой работы были разработаны 7 таблиц, 10 запросов к ним, 3 триггера, 3 представления и 2 запроса к ним.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список  использованных источников

 

  1. Мартин Грабер. Понимание  SQL (электронный учебник)
  2. Т. Конноли, К. Берг, А Страчан. Базы данных: проектирование, реализация и сопровождение. Теория и практика. – СПб.: Вильямс, 2003г., 1440 с.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРОГРАММА СОЗДАНИЯ БАЗЫ ДАННЫХ

Приложение А

(обязательное)

 

Удаление уже существующей базы

IF EXISTS (SELECT *

   FROM   master..sysdatabases

   WHERE  name = N'Poliklinika')

DROP DATABASE Poliklinika

GO

 

Создание новой базы

 

CREATE DATABASE Poliklinika

GO

 

Создание таблицы «Вид приема»

 

Create Table Vid_Priema

(

Number int

check (Number>0 and Number<=10)

primary key,

Name_priema varchar(20) not null

)

 

Создание таблицы «Специалист»

 

Create Table Specialist

(

Number_specialista int

check (Number_specialista>0 and Number_specialista<=12)

primary key,

Name_specialista varchar(20) not null

)

Создание таблицы «Должность»

 

Create Table Dolgnost

(

Number_dolgnosti int

check (Number_dolgnosti>0 and Number_dolgnosti<=20)

primary key,

Name varchar(20) not null,

Sred_ZP int

check (Sred_ZP>0 and Sred_ZP <=99999) not null

)

 

Создание таблицы «Корпус»

 

Create Table Korpus

(

Number_korpusa int

check (Number_korpusa>0 and Number_korpusa<=10)

primary key,

Adress varchar(30) not null

 

)

 

Создание таблицы «Пациент»

 

Create Table Pacient

(

Number_polisa int

check (Number_polisa>0 and Number_polisa<=999999)

primary key,

FIO varchar(35) not null,

Pasport_dan Bigint

check (Pasport_dan>0 and Pasport_dan<=9999999999) not null,

Dom_adress varchar(30) not null,

God_rogdenia varchar(10) not null

)

 

Создание таблицы «Медицинский персонал»

 

Create Table Med_personal

(

Number_personala int

check (Number_personala>0 and Number_personala<=100)

primary key,

Number_diploma int

check (Number_diploma>0 and Number_diploma<=999999) not null,

FIO_personala varchar(30) not null,

Dom_Adress varchar(35) not null,

Data_rogdenia varchar(10) not null,

ZP int

check (ZP>0 and ZP<=99999) not null,

Number_dolgnosti int

foreign key (Number_dolgnosti) references Dolgnost (Number_dolgnosti) not null,

Number_specialista int

foreign key (Number_specialista) references Specialist (Number_specialista) not null

)

 

Создание таблицы «Запись»

 

Create Table Zapis

(

Number_zapisi int

check (Number_zapisi>0 and Number_zapisi<=100)

primary key,

Vremja_priema varchar(18) not null,

Number_specialista int

check (Number_specialista>0 and Number_specialista<=100) not null,

Number_polisa int

foreign key (Number_polisa) references Pacient (Number_polisa) not null,

Number_personala int

foreign key (Number_personala) references Med_personal (Number_personala) not null,

Number int

foreign key (Number) references Vid_priema (Number) not null,

Number_korpusa int

foreign key (Number_korpusa) references Korpus (Number_korpusa) not null

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ДИАГРАММА БАЗЫ ДАННЫХ

Приложение Б

(обязательное)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ВВОД ТЕСТОВЫХ ДАННЫХ

Приложение В

(обязательное)

 

Информация о работе Информационная система для предметной области “Поликлиника”