Gabarito disponível
● CONTRIBUINTE (identificado por CPF_CNPJ, com atributos como Nome_RazaoSocial, Endereco, InscricaoEstadual);
● TRIBUTO (identificado por CodigoTributo, com atributos como NomeTributo, AliquotaBase);
● LANCAMENTO_FISCAL (representa a obrigação tributária individual e tem como atributos IDLancamento, DataVencimento, ValorDevido).
As seguintes regras de negócio foram estabelecidas:
● um CONTRIBUINTE pode ter zero ou múltiplos LANCAMENTOS_FISCAIS;
● cada LANCAMENTO_FISCAL deve estar associado a exatamente um CONTRIBUINTE;
● cada LANCAMENTO_FISCAL deve estar associado a exatamente um TRIBUTO;
● um TRIBUTO pode estar vinculado a zero ou múltiplos LANCAMENTOS_FISCAIS.
Considerando-se as informações fornecidas na situação hipotética precedente e os princípios de integridade referencial em bancos de dados relacionais, é correto afirmar que a tabela LANCAMENTO_FISCAL deve
Resolução comentada
LANCAMENTO_FISCAL precisa de duas chaves estrangeiras (contribuinte e tributo), com IDLancamento como PK.
Os relacionamentos são 1:N de CONTRIBUINTE e de TRIBUTO para LANCAMENTO_FISCAL. Assim, a tabela de lançamento recebe CPF_CNPJ e CodigoTributo como chaves estrangeiras, ambas obrigatórias (NOT NULL), o que assegura a integridade referencial. IDLancamento identifica cada lançamento e é a chave primária simples.
Análise das alternativas
A) Replicar atributos de TRIBUTO fere a normalização e não garante integridade de entidade; falta também o CodigoTributo como FK. C) Nome_RazaoSocial não é chave e não identifica o contribuinte. D) Falta a FK para TRIBUTO, exigida pela regra de negócio. E) Não há motivo para a PK ser composta; IDLancamento já identifica a tupla.
Referência: Modelo relacional: integridade de entidade e integridade referencial (chaves primárias e estrangeiras).
Resolução comentada do VaiConcursos.