Font size
Worksheets[LAB-BD] 02.2-Revisão: Mapeamento ME-R Estendido -> MRel
Total questions: 10
Worksheet time: 11mins
As abstrações de agregação e Generalização:
São mapeadas antes do mapeamento dos CR
São mapeadas junto com os CR
Um CE que é ao mesmo tempo genérico e uma agregação deve ser mapeado em duas relações distintas
Um CE agregação pode ser mapeado em duas relações: uma para o CE abstrato e outra para o CR Gerador
Um CE específico somente pode ser mapeado para uma relação se tiver uma chave específica
O mapeamento de uma abstração de agregação gera:
(Cada cor da chave indica numa chave diferente)
CEA=(ChCEC1,ChCEC2, ChAdic, AtrCEA, ChCEA) e
CRG=(ChCEC1, CHCEC2, AtrCRG)
CEA=(ChCEC1,ChCEC2, ChAdic, AtrCEA, ChCEA, AtrCRG)
CEA=(ChAdic, AtrCEA, ChCEA) e
CRG=(ChCEC1, ChCEC2, AtrCRG)
CEA=(ChAdic, ChCEA, AtrCEA) e
CRG=(ChCEC1, ChCEC2, AtrCRG)
CEA=(ChAdic, ChCEA, CEC1, CEC2) e
CRG=(ChCEC1, ChCEC2, AtrCEA, AtrCRG)
O mapeamento da abstração de generalização inclui as seguintes relações:
Emprestimo=(DataEmprestimo, NumCadastro, Código, DataPrev, DataDev)
Emprestar=(NumCadastro, Quantos, CodAutoriza, Código, Editora)
Emprestimo=(NumCadastro, Código, DataEmprestimo, DataPrev, DataDev)
Emprestar=(NumCadastro, Quantos, CodAutoriza, Código)
Emprestimo=(NumCadastro, Código, DataEmprestimo, DataPrev, DataDev, Quantos, CodAutoriza)
O mapeamento da abstração de generalização inclui as seguintes relações:
Emprestimo=(DataEmprestimo, NumCadastro, Código, DataPrev, DataDev)
Emprestar=(NumCadastro, Quantos, CodAutoriza, Código, Editora)
Emprestimo=(NumCadastro, Código, DataEmprestimo, DataPrev, DataDev)
Emprestar=(NumCadastro, Quantos, CodAutoriza, Código)
Emprestimo=(NumCadastro, Código, DataEmprestimo, DataPrev, DataDev, Quantos, CodAutoriza)
No mapeamento dessa abstração de generalização:
O atributo Quantos representa a quantidade de empréstimos o usuário fez para aquele documento
O atributo Quantos representa a quantidade de documentos que foram emprestados naquele empréstimo.
O atributo Quantos representa a quantidade de usuários estão autorizados a emprestar aquele documento
O atributo Quantos representa a quantidade de documentos que aquele usuário pode emprestar de cada vez
O atributo Quantos representa a quantidade de empréstimos foram feitos da Data do Empréstimo
O mapeamento de uma abstração de generalização pode ter:
Uma relação para o CE Abstrato uma para cada um dos N CE Específicos
Uma relação para cada CE Abstrato e mais uma relação para o CE Específico
Uma relação para cada CE Específico que tenha chave específica mais uma para os que tenham apenas a chave genérica
Uma relação só para o CE Abstrato e para todos os CE Específicos
N relações, uma para cada CE Específico
Considerando esse DE-R
A melhor opção é um mapeamento NE, porque existem poucos atributos genéricos e o CR Emprestar sempre identifica o documento pelo código da autorização
Não deve ser usado um mapeamento NE, porque o CR Emprestar se tornaria ternário
A melhor opção é um mapeamento 1G+NE, porque existem muitos atributos específicos
Não deve ser usado um mapeamento 1G+NE, porque haveria conflito dentre as chaves específicas
A melhor opção é um mapeamento !G, porque caso contrário o CR Emprestar ficaria ambíguo
Nenhum mapeamento possível para esse diagrama poderá incluir as relações:
Usuário=(NumCadastro, Nome, RG, Depto)
Documento=(Código, Editora, Tipo)
Livro=(Título, Volume, Número, Autores, ISBN, QuantVols, Importador, VolInicio, VolFinal, Código, Editora)
Livro=(Título, Volume, Número, Autores, ISBN, QuantVols, Importador, VolInicio, VolFinal)
Livro=(Título, Volume, Número, Autores, ISBN, QuantVols, Importador, VolInicio, VolFinal, Código, Editora, Tipo)
Caso esse DE-R tenha a Abstração de Generalização mapeada como IG+NE, então a seguinte relação estará no mapeamento:
Emprestar=(NumeroCadastro, Quantos, CodAutoriza, Código, Título, Autores)
Emprestar=(NumeroCadastro, Quantos, CodAutoriza, Código)
Emprestar=(NumeroCadastro, DataEmprest, Código, Quantos, CodAutoriza)
Emprestar=(NumeroCadastro, Código, Editora, Quantos, CodAutoriza)
Emprestar=(NumeroCadastro, Título, Autores, ISBN, QuantVol, CodAutoriza)
Caso esse DE-R tenha a Abstração de Generalização mapeada como NE, então a seguinte relação estará no mapeamento:
Emprestar=(NumeroCadastro, Quantos, CodAutoriza, Código, Título, Autores)
Emprestar=(NumeroCadastro, Quantos, CodAutoriza, Código)
Emprestar=(NumeroCadastro, DataEmprest, Código, Quantos, CodAutoriza)
Emprestar=(NumeroCadastro, Código, Editora, Quantos, CodAutoriza)
Emprestar=(NumeroCadastro, Título, Autores, ISBN, QuantVol, CodAutoriza)
