UNIVERSIDADE DO VALE DO RIO DOS SINOS
Disciplina: Banco de Dados I Aluna: Jennifer Diehl
Exercício 1: Gerar o script DDL
• Modelo textual lógico:
Medico (idMedico, Nome)
Convenio ( idConvenio, Nome)
Paciente (idPaciente, idConvenio, DtNascimento, Nome, Diversos)
idConvenio referencia Convenio
Consulta (idConsulta, idPaciente, idMedico, Data, Diagnostico)
idPaciente referencia Paciente
idMedico referencia Medico
Exame (idExame, idConsulta, Data, Resultados)
idConsulta referencia Consulta
• DDL
Convenio Medico Exame
CREATE TABLE Convenio CREATE TABLE Medico CREATE TABLE Exame
(idConvenio integer NOT NULL, (idMedico integer NOT NULL, (idExame integer NOT NULL,
Nome varchar(50) NOT NULL, Nome varchar(50) NOT NULL, idConsulta integer NOT NULL,
PRIMARY KEY (idConvenio)) PRIMARY KEY (idMedico)) Data date NOT NULL,
PRIMARY KEY (idExame),
FOREIGN KEY (idConsulta) REFERENCES Consulta (idConsulta))
Paciente Consulta
CREATE TABLE Paciente CREATE TABLE Consulta
(idPaciente integer NOT NULL, (idConsulta integer NOT NULL,
idConvenio integer NOT NULL, idPaciente integer NOT NULL,
DtNascimento date NOT NULL, idMedico integer NOT NULL,
Nome varchar(50) NOT NULL, Data date NOT NULL,
Diversos varchar(50), Diagnostico varchar(100) NOT NULL,
PRIMARY KEY (idPaciente), PRIMARY KEY (idPaciente),
FOREIGN KEY (idConvenio) REFERENCES Convenio (idConvenio) ) FOREIGN KEY (idPaciente) REFERENCES Paciente (idPaciente),
FOREIGN KEY (idMedico) REFERENCES Medico (idMedico) )
a) alterar a tabela medico adicionando o campo endereco VARCHAR(100)
b) alterar a tabela exame adicionando o campo nome VARCHAR(100)
c) alterar a tabela medico alterando o tipo do campo nome para VARCHAR(100)
d) alterar a tabela paciente eliminando o campo diversos
e) eliminar a tabela convenio
CLIQUE AQUI PARA FAZER DOWNLOAD DO SCRIPT
UNIVERSIDADE DO VALE DO RIO DOS SINOS
Disciplina: Banco de Dados I Aluna: Jennifer Diehl
Exercício 2: Gerar o script DDL
• Modelo textual lógico:
Funcionario (Matricula, Nome, DtNascimento, Nascimento, Sexo, EstadoCivil, RG, CIC, Endereco,
Telefone, DtAdmissao)
Cargo(CodCargo, Descricao)
Departamento (CodDepto, Descricao)
Lotacao (MatriculaFuncionario, CodDepto, DtInicio, DtFim)
MatriculaFuncionario referencia Funcionario
CodDepto referencia Departamento
Ocupacao (MatriculaFuncionario, CodCargo, DtInicio, DtFim)
MatriculaFuncionario referencia Funcionario
CodCargo referencia Cargo
Dependente (idDependente, MatriculaFuncionario, Nome, DtNascimento)
MatriculaFuncionario referencia Funcionario
• DDL
Cargo Ocupacao
CREATE TABLE Cargo CREATE TABLE Ocupacao
(CodCargo integer NOT NULL, (MatriculaFuncionario integer NOT NULL,
Descricao varchar(50) NOT NULL, CodCargo integer NOT NULL,
PRIMARY KEY (CodCargo)) DtInicio date NOT NULL,
DtFim date NOT NULL,
Departamento FOREIGN KEY (MatriculaFuncionario) REFERENCES Funcionario (Matricula)
FOREIGN KEY (CodCargo) REFERENCES Cargo (CodCargo))
CREATE TABLE Departamento
(CodDepto integer NOT NULL,
Descricao varchar(50) NOT NULL, Lotacao
PRIMARY KEY (CodDepto))
CREATE TABLE Lotacao
(MatriculaFuncionario integer NOT NULL,
Funcionario CodDepto integer NOT NULL,
DtInicio date NOT NULL,
CREATE TABLE Funcionario DtFim date NOT NULL,
(Matricula integer NOT NULL, FOREIGN KEY (MatriculaFuncionario) REFERENCES Funcionario (Matricula)
Nome varchar(50) NOT NULL, FOREIGN KEY (CodDepto) REFERENCES Departamento (CodDepto))
DtNascimento date NOT NULL,
Nacionalidade varchar(20),
Dependente
Sexo char(1),
EstadoCivil varchar(15), CREATE TABLE Dependente
RG varchar(20), (idDependente integer NOT NULL,
CIC varchar(20), MatriculaFuncionario integer NOT NULL,
Endereco varchar(50), Nome varchar(50) NOT NULL,
Telefone varchar(30) DtNascimento varchar(50),
DtAdmissao date NOT NULL, PRIMARY KEY (idDependente),
PRIMARY KEY (Matricula)) FOREIGN KEY (MatriculaFuncionario) REFERENCES Funcionario (Matricula))
)
a) eliminar a chave primária da tabela departamento
b) alterar a tabela cargo adicionando o campo atribuicoes TEXT
c) alterar a tabela dependente alterando adicionando o campo graudependencia VARCHAR(30)
d) alterar a tabela funcionario eliminando o campo rg
e) eliminar a tabela cargo
CLIQUE AQUI PARA FAZER DOWNLOAD DO SCRIPT