Asp. avanç. em bando de dados bdd-lab1: banco de dados distribuídos
673 palavras
3 páginas
UFJF/DCC DCC077 – ASP. AVANÇ. EM BANDO DE DADOSBDD-LAB1: BANCO DE DADOS DISTRIBUÍDOS
1) Proponha um projeto lógico de BDD relacional (tabelas + esquema de alocação) para os requisitos abaixo:
“Uma clínica de uma cidade possui um posto matriz no centro e outros postos em bairros. No posto matriz fica o departamento pessoal. Cada posto tem um código, rua, número, bairro, CEP e fone. A clínica emprega médicos e funcionários e presta serviço a pacientes através de consultas com médicos (consultas marcadas devem ser mantidas no BD). Um funcionário trabalha em um posto e possui um código, nome, CPF, salário, função, data de admissão e turno de trabalho. Médicos dão atendimento em um certo subconjunto de postos (com uma escala semanal de horários predefinida em cada posto, atendendo em uma sala do posto). Um médico tem especialidade, código, CRM, nome, salário, endereço, fone residencial e celular para contato e data de admissão. Os postos oferecem atendimento para todas as especialidades que a clínica suporta. Apenas pacientes que residem na cidade tem direito a consultar nos postos, devendo se dirigir ao posto do seu bairro. Para todo paciente cadastra-se um código, nome, rua, número, bairro, RG, data de nascimento e eventual(is) problema(s).”
CREATE TABLE tb_Postos{
numero integer,
cep char(8),
fone varchar(10),
endereco varchar(50),
bairro varchar(20),
}
CREATE TABLE tb_Funcionarios{
codF integer,
nome varchar(50),
salario float,
turno varchar(5),
cpf char(11),
dt_Admissao Date,
nr_posto integer
}
CREATE TABLE tb_Medicos{
codM integer;
nome varchar(50);
salario float;
especialidade varchar(15);
endereco varchar(50);
crm varchar(11);
dt_Admissao Date;
fone_Res varchar(10);
celular varchar(10);
}
CREATE TABLE tb_Pacientes{
codP integer;
nome varchar(50);
endereco varchar(50);
bairro varchar(20);
rg varchar(11);
dt_nascimento Date;
problema varchar(20);