Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: Banco de Dados (Exercício 12) Unip – Universidade Paulista | Campus Vargas – Ribeirão Preto - SP Nome: ________________________________________ Código: ______________ 1) Considere o banco de dados relacional definido parcialmente abaixo (faltam as chaves da tabela Empregado): Empregado (CodEmpregado, Nome, NrPIS_PASEP) Dependente (CodEmpregado, NrDependente, Nome) CodEmpregado referencia Empregado Na tabela Empregado, tanto CodEmpregado quanto NrPIS_PASEP podem ser chave primária. Qual você escolheria como chave primária? Por quê? NrPIS_PASEP para não confundir 2) Abaixo, podemos visualizar um esquema parcial para um banco de dados relacional. Identifique neste esquema as chaves primárias e as chaves estrangeiras: Aluno (CodigoAluno, Nome, CodigoCurso) PRIMARIAS CodigoAluno ESTRANGEIRAS CodigoCurso Curso (CodigoCurso, Nome) PRIMARIAS CodigoCurso ESTRANGEIRAS 0 Disciplina (CodigoDisciplina, Nome, Creditos, CodigoDepartamento) PRIMARIAS CodigoDisciplina ESTRANGEIRAS CodigoDepartamento Curriculo (CodigoCurso, CodigoDisciplina, Obrigatoria_Opcional) PRIMARIAS CodigoCurso, CodigoDisciplina ESTRANGEIRAS CodigoCurso, CodigoDisciplina Conceito (CodigoAluno, CodigoDisciplina, Ano_Semestre, Conceito) PRIMARIAS CodigoAluno ESTRANGEIRAS CodigoDisciplina Departamento (CodigoDepartamento, Nome) PRIMARIAS CodigoDepartamento ESTRANGEIRAS 0 3) Considere um banco de dados com o seguinte esquema: Paciente (CodigoConvenio, NumeroPaciente, Nome) CodigoConvenio referencia Convenio Convenio (CodigoConvenio, Nome) Medico (CRM, Nome, Especialização) Consulta (CodigoConvenio, NumeroPaciente, CRM, Data-Hora) (CodigoConvenio, NumeroPaciente) referencia Paciente CRM referencia Medico Explique quais verificações devem ser feitas pelo SGBD para garantir a integridade referencial nas seguintes situações: · Uma linha é incluída na tabela Consulta · R: Para inclusão de uma tupla o SGBD deve checar se existe a tabela onde esta tupla ira ser inserida também deve garantir que todas as restrições da tabela atendem a tupla inserida · Uma linha é excluída da tabela Paciente · R: SGBD deve garantir que a tupla que foi removida seja também removido o direito a chave primaria no caso NumeroPaciente para que outros pacientes usem desse numero · O código do CRM em uma linha de Consulta é alterado · R: Garantir que o banco se encontre consistente após a alteração e que se altera o CRM do medico também · O código do CRM em uma linha de Médico é alterado · R: Como na pergunta anterior SGBD deve garantir que se encontre em um estado consistente e também o campo CRM de Consulta seja alterado para atender a consistência caso necessário.
Compartilhar