Автор работы: Пользователь скрыл имя, 16 Февраля 2013 в 15:39, курсовая работа
SQL символизирует собой структурированный язык запросов. Это язык, который дает возможность создавать и работать в реляционных базах данных, которые являются наборами связанной информации сохраняемой в таблицах.
Мир БД становится все более и более единым, что привело к необходимости создания стандартного языка, который мог бы использоваться для функционирования в большом количестве различных видов компьютерных сред. Стандартный язык позволит пользователям, знающим один набор команд, использовать их, чтобы создавать, отыскивать, изменять, и передавать информацию, независимо от того, работают ли они на персональном компьютере, сетевой рабочей станции, или на универсальной ЭВМ.
В нашем все более и более взаимосвязанном компьютерном мире, пользователь, снабженный таким языком, имеет огромное преимущество в использов
Введение……………….………………………………………………………...
1 Информационная система для предметной области “Поликлиника” ….....
1.1 Анализ предметной области………………………………………….….
1.2 Анализ информационных задач…………...……….….…………….......
1.3 Выработка требований и ограничений …………………………………
1.4 Проектирование базы данных …………………….…………………….
1.5 Программная реализация проекта базы данных ……………………….
1.6 Триггеры…………………………………………………………………
1.7 Запросы ……..……………………………………………………………
1.8 Представления……………………………………………………………
Заключение…………………………………………………………..………….
Список использованных источников………………………………..…..……
Приложение А Текст программы создания базы данных....……….………...
Приложение Б Диаграмма базы данных……………………………………...
Приложение В Ввод тестовых данных...……………………………………..
Приложение Г Программная реализация триггеров..………………………..
Приложение Д Программная реализация запросов……...………………….
Приложение Е Программная реализация представлений и запросов к ним
Приложение Ж Интерфейс для работы с информационной системой……..
Сущность «Мед. персонал» (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 Программная реализация проекта базы данных
На данном этапе использовались следующие операторы:
Текст программы создания базы данных приведен в приложении А.
Для спроектированной базы данных построена диаграмма, которая приведена в приложении Б.
Текст программы ввода текстовых данных приведен в приложении В.
Триггер – это предварительно определенные действия или последовательность действий, автоматически осуществляемые при выполнении операций удаления, обновления, добавления.
Компоненты триггера:
Типы триггеров:
Преимущества использования триггеров:
В курсовой работе разработаны следующие триггеры:
2) триггер Priem, осуществляющий проверку наличия записи к какому-либо специалисту на определенное время;
3) триггер Proverka_vozrasta_
Программная реализация триггеров приведена в приложении Г.
Запрос - команда, которая задается программе БД, и которая сообщает ей, чтобы она вывела определенную информацию из таблиц в память. Эта информация обычно посылается непосредственно на экран компьютера.
Запросы выполняются с помощью команды select. В общем случае, команда SELECT начинается с ключевого слова SELECT, сопровождаемого пробелом. После этого должен следовать список имен столбцов, которые вы хотите видеть, отделяемые запятыми. Если вы хотите видеть все столбцы таблицы, вы можете заменить этот список звездочкой (*). Ключевое слово FROM следующее далее, сопровождается пробелом и именем таблицы, к которой делается запрос. В заключение, точка с запятой ( ; ) должна использоваться, чтобы закончить запрос и указать что команда готова к выполнению. [1]
Список запросов:
Программная реализация запросов приведена в приложении Д.
Представления – это таблицы, чье содержание выбирается или получается из других таблиц. Они работают в запросах точно также как и основные таблицы, но не содержат никаких собственных данных. Представления - подобны окнам, через которые просматривается информация (как она есть, или в другой форме), которая фактически хранится в базовой таблице. Представление - это фактически запрос, который выполняется всякий раз, когда представление становится темой команды. Вывод запроса при этом в каждый момент становится содержанием представления. [2]
В курсовой работе были разработаны следующие представления:
К представлениям разработаны следующие запросы:
Программная реализация представлений и запросов к ним приведена в приложении Е.
В ходе курсового проектирования создана информационная система для предметной области “Поликлиника”. В ходе выполнения курсовой работы были разработаны 7 таблиц, 10 запросов к ним, 3 триггера, 3 представления и 2 запроса к ним.
В курсовой работе были выполнены анализ предметной области, информационных задач и круга пользователей системы, проектирование и программная реализация базы данных.
Список использованных источников
Приложение А
(обязательное)
Удаление уже существующей базы
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
)
Приложение Б
(обязательное)
Приложение В
(обязательное)
Информация о работе Информационная система для предметной области “Поликлиника”