Разработка информационной системы 'Клиника'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    348,93 Кб
  • Опубликовано:
    2014-07-14
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка информационной системы 'Клиника'

Введение


Система управления базами данных (СУБД) - это программное обеспечение, с помощью которого пользователи могут определять, создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.

База данных (БД) - совокупность сведений, хранимых в запоминающих устройствах ЭВМ, выступающая в качестве исходных данных при решении различных задач.

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

Цель курсового проекта: создать информационную систему «Клиника».

Задачи:

1.    Создать ЗНФ;

2.      Создать БД «статистика матчей» в программе IBExpert;

.        Создать приложение в Lazarus.

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


Необходимо создать СУБД «Клиника» и приложение в Lazarus. Необходимо привести к третьей нормальной форме: Ф.И.О врача, Специализация, Ф.И.О пациента, День Регистрационный номер, Адрес, Дата рождения, Номер полиса, Диагноз, Дата приема, Страховая карта, Дата начало больничного Дата выписки.

управление пользователь программа

 


2. Описание алгоритма

 

.1 Создание 3НФ


Созданная 3НФ показана на рисунке 1.

Рисунок 1 - 3НФ

 

.2 Создание таблиц


Создание таблиц начинается с таблицы, не имеющей внешних ключей. Запросы на создание таблиц выглядеть следующим образом:

Таблица №1table vrah

(IDvrah numeric not null primary key,varchar (200),varchar (50));

Внешний ключ IDvrah связывает текущую таблицу с таблицей vrah по ее первичному ключу IDvrah.

Таблица №2table pacient

(IDpacient numeric not null primary key,varchar (200),varchar (30),varchar (50), varchar (50),

nompol varchar (20));

Для автоматического заполнения значениями ключевых полей используются триггеры и генераторы. Запрос на их создание выглядит следующим образом:

Триггер к таблице №1

create generator vrah_id_gen;;term ^;trigger set_vrah_id for vrahbefore insert position 0 as(new.IDvrah is null) then.IDvrah = gen_id (vrah_id_gen, 1);; ^term; ^;

Триггер к таблице №2generator pacient_id_gen;;term ^;trigger set_pacient_id for pacientbefore insert position 0 as(new.IDpacient is null) then.IDpacient = gen_id (pacient_id_gen, 1);; ^

set term; ^

commit;

Оставшиеся таблицы и триггеры делаются аналогичным образом, как на примере 1 и 2.

 


3. Создание приложения


Для того чтобы создать приложение необходимо, создать новый проект (Файл > Создать…> из группы «Проект» выбираем «Приложение»). Добавим модуль данных (Файл > Создать…> из группы «Модуль» выбираем «Модуль данных»).

 

.1 Модуль данных


Добавляем в DataModule1 TIBConnection, TSQLTransaction и четыре компонента TSQLQuery со вкладки SQLdb. Добавим четыре компонента TDataSource со вкладки Data Access. (как показано на рисунке 2)

Рисунок 2 - добавление компонентов

Задаем в свойстве IBConnection1

DatabaseName

C:\\BD\BD.GDB

Transaction

SQLTransaction1

LoginPrompt

False

Dialect

3

CharSet

UTF-8

UserName

SYSDBA

Password

masterkey



Задаем в свойстве SQLTransaction1

Database

IBConnection1

DefaultAction

caCommit

Params

write read_committed rec_version nowait


Установим свойство Connected в компоненте IBConnection1в True (как показана на рисунке 3).

Рисунок 3 - В свойстве Connected меняем вместо True на False

В случае успеха свойство беспрепятственно установится в True. В Случае ошибки необходимо проверить имя пользователя, пароль, путь к базе.

Задаем в свойстве SQLQuery1

DatabaseIBConnection1


Transaction

SQLTransaction1

SQL

select * from vrah

InsertSQL

insert into vrah (FIOvrah, spec) values (:FIOvrah,:spec)

DeleteSQL

delete from vrah where IDvrah=:IDvrah

UpdateSQL

update vrah set IDvrah=:IDvrah, FIOvrah=:FIOvrah, spec=:spec where IDvrah=:OLD_IDvrah


Задаем в свойстве DataSource1



Задаем в свойстве SQLQuery2

Database

IBConnection1

Transaction

SQLTransaction1

DataSource

DataSource1

SQL

select * from pacient

InsertSQL

insert into pacient (FIOpacient, pegnom, adres, dt, nompol) values (:FIOpacient,:pegnom,:adres,:dt,:nompol)

DeleteSQL

delete from pacient where IDpacient=:IDpacient

UpdateSQL

update pacient set IDpacient=:IDpacient, FIOpacient=:FIOpacient, pegnom=:pegnom, adres=:adres, dt=:dt, nompol=:nompol where IDpacient=:OLD_IDpacient


Задаем в свойстве DataSource1

DataSet

SQLQuery2


Оставшиеся SQLQuery и DataSource делаются аналогичным образом.

 

.2 Создания событий


Задаем событие OnCreate в модуле данных DataModule1

procedure TDataModule1. DataModuleCreate (Sender: TObject);. Open;;

Задаем событие AfterConnect в компоненте IBConnection1TDataModule1.IBConnection1AfterConnect (Sender: TObject);. Open;. Open;. Open;. Open;. Open;. Open;;

Задаем событие AfterOpen в компоненте SQLQuery1

Procedure TDataModule1.SQLQuery1AfterOpen (Sender:TDataSet);. Open;;

Задаем событие BeforeDisconnect в компоненте IBConnection1

procedure TDataModule1.IBConnection1BeforeDisconnect (Sender: TObject);. Close;. Close;. Close;. Close;. Close;. Close;;

Задаем событие BeforeClose, общее для компонентов SQLQuery1и SQLQuery2

procedure TDataModule1.SQLQuery1BeforeClose (DataSet: TDataSet);TSQLQuery(Dataset).State in [dsInsert, dsEdit]TSQLQuery(Dataset).Post;;

Задаем событие OnClose формы в Form1

procedure TForm1. FormClose (Sender: TObject; var CloseAction: TCloseAction);.SQLTransaction1. Commit;.IBConnection1. Close;;

Задаем событие OnNewRecord в компонента SQLQuery1

procedure TDataModule1.SQLQuery1NewRecord (DataSet: TDataSet);. FieldByName('IDvrah').AsInteger:=0;;

Задаем событие OnNewRecord в компонента SQLQuery2

procedure TDataModule1.SQLQuery2NewRecord (DataSet: TDataSet);. FieldByName('IDpacient').AsInteger:=0;;

Задаем событие After Post в компоненте SQLQuery1

procedure TDataModule1.SQLQuery1AfterPost (DataSet: TDataSet);(Dataset).ApplyUpdates;;

Оставшиеся SQLQuery делаются аналогичным образом.

 

.3 Добавление компонентов на Form1


Добавим во вкладки Standard на форму два компонента TPanel. Добавим во вкладки Data Controls на TPanel четыре TDBGrid. Добавим со вкладке Data Controls четыре компонента TDBNavigator (как показана на рисунке 4).

Задаем свойство для Panel1 и Panel2

AlignalTop


Height

224


Задаем свойство для DBNavigator1 и DBNavigator2

DataSourceDataModule1. DataSource1 (DataModule1. DataSource2)



Задаем свойство для DBGrid1 и DBGrid2

DataSourceDataModule1. DataSource1 (DataModule1. DataSource2)



Оставшиеся DBNavigator и DBGrid задаются аналогичный образом.

Рисунок 4 -

Похожие работы на - Разработка информационной системы 'Клиника'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!