
- •«Кубанский государственный университет»
- •Создание базы данных «Поликлиника»
- •Содержание
- •Введение
- •1. Описание предметной области
- •1.1 Общее описание предметной области
- •2.1 Инфологическая модель данных
- •2.1.1 Описание сущностей
- •2.1.2 Описание связей
- •2.2 Даталогическая модель
- •2.2.1 Диаграмма связи по полям
- •3. Организация выборки информации из базы данных
- •4. Разработка представлений для отображения результатов выборки
- •5. Проектирование хранимых процедур
- •6. Разработка механизмов управления данными в базе при помощи триггеров
- •6.1 Триггер для добавления данных
- •6.2 Триггер для удаления данных
- •6.3 Триггер для обновления данных
- •7. Разработка технологий доступа к базе данных
- •7.1 Выбор пользователей бд
- •7.2 Разграничение полномочий пользователя
- •8. Проектирование клиентского приложения
- •8.1 Функциональное назначение
- •8.2 Разработка технологий доступа к базе данных
- •8.3 Руководство пользователя
- •9. Организация обмена данными между приложениями
- •10. Экономическое обоснование результатов внедрения программного продукта
- •Заключение
- •Список используемой литературы
2.2.1 Диаграмма связи по полям
На рисунке 2.2 приведена схема базы данных «Поликлиника»
Рисунок 2.2 – Схема базы данных «Поликлиника»
3. Организация выборки информации из базы данных
база данных триггер приложение
Выборка информации осуществляется при помощи запросов, которые представлены в этом разделе.
1. Выборка данных из связанных таблиц. Формулировка запроса: выбрать ФИО_врача и название смены из таблиц «Врачи» и «Смены»,где коды «id_vracha» и «id_smeni » равны:
select Vrachi.FIO_vracha,Smeni.Nazvanie_smeni from Vrachi,Smeni where Vrachi.id_vracha=Smeni.id_smeni
Рисунок 3.1 – Результат работы запроса «Выборка из связанных таблиц»
2. Выборка с использованием оператора (естественного) соединения. Формулировка запроса: выбрать врачей и их специализации путем соединения их по коду врача:
select FIO_vracha, Nazvanie from Vrachi inner join Specializacii on Vrachi.id_vracha=Specializacii.id_specializacii
Рисунок 3.2 – Результат работы запроса «Выборка с использованием оператора естественного соединения»
3. Выборка с использованием шаблона. Формулировка запроса: выбрать всех клиентов из города Ставрополя:
select FIO, Adress_naspunkt from Pacienti where Adress_naspunkt like 'Ставрополь%'
Рисунок 3.3 – Результат работы запроса «Выборка с использованием шаблона»
4. Выборка информации в заданном диапазоне. Формулировка запроса: выбрать врачей со стажем работы между 10 и 20 годами:
select FIO_vracha, Stag_raboti from Vrachi where Stag_raboti between 10 and 20
Рисунок 3.4 – Результат работы запроса «Выборка информации в заданном диапазоне»
5. Выборка информации по дате. Формулировка запроса: выбрать всех пациентов, которые родились позже 01.01.1980:
select*from Pacienti where Data_rogdeniya>'01.01.1980'
Рисунок 3.5 – Результат работы запроса «Выборка информации по дате»
6. Выборка исчисляемых значений. Формулировка запроса: выбрать врача и вычислить стоимость его услуг с учетом льгот:
select FIO_vracha,Stoimost_priema*0.8 from Vrachi
Рисунок 3.6 – Результат работы запроса «Выборка исчисляемых значений»
7. Выборка с использованием механизма подзапросов. Формулировка запроса: выбрать все поля из таблицы «Врачи», причем включая, только тех врачей, у которых стаж работы больше среднего значения среди всех врачей:
select*from Vrachi where Stag_raboti>(select AVG(Stag_raboti)from Vrachi)
Рисунок 3.7 – Результат работы запроса «Выборка с использованием механизма подзапросов»
8. Простая выборка данных. Формулировка запроса: выбрать все поля из таблицы «Пациенты»:
select*from Pacienti
Рисунок 3.8 – Результат работы запроса «Простая выборка данных»
9. Простая выборка с сортировкой. Формулировка запроса: выбрать из таблицы «Пациенты» все записи и отсортировать их:
select*from Pacienti order by FIO
Рисунок 3.9 – Результат работы запроса «Простая выборка с сортировкой»
4. Разработка представлений для отображения результатов выборки
Представление – это динамическая таблица, служащая для отображения результатов выборки из информации. Представления являются удобным инструментом для работы с таблицами базы данных.
В базе данных разработано представление: «режим работы врачей» (рисунок 4.1).
Рисунок 4.1 – Представление «Режим работы врачей»
Данное представление содержит информацию о врачах: ФИО, день в который они работают, а так же название смены.
Рисунок 4.2 – Результат работы представления «Режим работы врачей»