exemplo hospitalar

19
Exemplo Hospitalar Exemplo : BD para uma realidade hospitalar Médicos Consultas Med_Amb Pacientes Ambulatórios

Upload: marina

Post on 12-Jan-2016

36 views

Category:

Documents


1 download

DESCRIPTION

Exemplo : BD para uma realidade hospitalar Médicos Consultas Med_Amb Pacientes Ambulatórios. Exemplo Hospitalar. a) Esquema Conceitual. Criação de uma tabela Create table nome_tabela ( nome_atributo 1 domínio 1 , - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Exemplo Hospitalar

Exemplo Hospitalar

Exemplo: BD para uma realidade hospitalar

Médicos Consultas

Med_Amb Pacientes

Ambulatórios

Page 2: Exemplo Hospitalar

a) Esquema Conceitual

Criação de uma tabela

Create table nome_tabela ( nome_atributo 1 domínio 1,

... ... nome_atributo n domínio n,[ constraint nome_ri primary key (lista_atributos), ][constraint nome_ri foreign key (nome_atributo) references nome_tabela] );

Serão especificadas tantas chaves estrangeiras (foreign key) quantos forem os atributos que expressam relacionamentos entre tabelas.

Page 3: Exemplo Hospitalar

CRIAÇÃO DAS TABELAS

Ambulatórios [ nroa, andar, capacidade ]

Pacientes [ codp, nomep, idade, cidade , problema ]

Médicos [codm, nomem, idade, especialidade, salario,nroa ]

Consultas [ codm, codp, data_hora ]

Page 4: Exemplo Hospitalar

Linguagem de Definição de Dados

create table ambulatorios ( nroa integer, andar integer, capacidade integer, constraint a1 primary key(nroa) );

create table pacientes ( codp integer, nomep varchar(20), idade integer, cidade varchar(20), problema varchar(20), constraint p1 primary key(codp));

Page 5: Exemplo Hospitalar

Linguagem de Definição de Dados

create table medicos ( codm integer, nomem text, idade integer, especialidade text, salario money, nroa integer , constraint m1 primary key(codm) ,constraint ce1 foreign key(nroa) references ambulatorios );

Page 6: Exemplo Hospitalar

create table consultas ( codm integer, codp integer, data_hora date time, constraint c1 primary key(codm,codp,data_hora),

constraint ce2 foreign key(codm) references medicos, constraint ce3 foreign key(codp) references pacientes );

Page 7: Exemplo Hospitalar

b) Esquemas Externos

Visão: relação virtual derivada a partir das relações presentes no BD (transparente para a aplicação)

Exemplo de visão: O setor de tratamento de câncer do Hospital lida apenas com dados de pacientes que têm esta doença

Criação de uma visão

Create View nome_visão (lista de atributos) asSelect lista de atributosfrom nome_relação e/ou visão[ where qualificação] ;

Page 8: Exemplo Hospitalar

Linguagem de Definição de Dados Esquema Externo 1

Criação de uma Visão (SQL):

Create View PacCâncer (código, paciente, idade) asSelect codp, nomep, idadefrom Pacienteswhere problema = ‘Câncer’;

Page 9: Exemplo Hospitalar

Definições recursivas

Create View PacCanJovens as Select * From PacCâncer Where idade < 21;

Nível Externo Nível ConceitualSelect * Select codp, nomep, idadefrom PacCâncer from Pacienteswhere paciente like ‘J%’; where problema = ‘câncer’ and nomep like ‘J%’;

Page 10: Exemplo Hospitalar

LMD:

Update PacCâncer Update Pacientes

set idade = idade + 1 set idade = idade + 1

where código = 1; where problema = ‘câncer’

and codp = 1;

Page 11: Exemplo Hospitalar

Esquema Externo 2

Create View DescontosMed (código, nome, desconto)

as Select codm, nomem, salário * 0.15 + 80

from Médicos;

Page 12: Exemplo Hospitalar

Esquema Externo 3

Create View ConsultasMP (códigoMédico, especialidade, códigoPaciente, data)

as Select médicos.codm, especialidade, codp, data_hora

from Médicos, Consultas

where Médicos.codm = Consultas.codm;

Page 13: Exemplo Hospitalar

Esquema Externo 4

Create View DadosMed as

Select codm, nome, especialidade

from Médicos;

Create View Horários

as Select codm,data_hora

from Consultas;

Page 14: Exemplo Hospitalar

nroa andar capacidade 1 1 30 2 1 50 3 2 40 4 2 25 5 2 50

Ambulatório

Page 15: Exemplo Hospitalar

Pacientes

codp nomep idade cidade problema

1 Ana 20 Fpolis gripe2 Paulo 24 Palhoça fratura3 Lúcia 30 Fpolis tendinite4 Mário 22 Blumenau sarampo5 Raul 19 Blumenau câncer

Page 16: Exemplo Hospitalar

Consultas

codm codp data hora1 1 12/10/04 14:001 4 13/10/04 10:002 1 13/10/04 9:002 2 13/10/04 11:002 3 14/10/04 14:002 4 14/10/04 17:003 3 12/10/04 10:003 4 15/10/04 13:004 4 16/10/04 13:00

Page 17: Exemplo Hospitalar

Médicos

codm nomem idade especialidade nroa salario1 João 20 ortopedia 1 1000,002 Maria 20 traumatologia 2 2000,003 Pedro 25 pediatria 2 500,004 Carlos 28 ortopedia 1500,00

Page 18: Exemplo Hospitalar

Visão Externa 1- PacCâncer

codigo paciente idade5 Raul 19

Visão Externa 2- DescontosMed

codigo nomem desconto 1 João 2302 Maria 3803 Pedro 1554 Carlos 305

Page 19: Exemplo Hospitalar

DadosMed

codm nomem especialidade1 João ortopedia2 Maria traumatologia3 Pedro pediatria4 Carlos ortopedia

Visão Externa 4