SóProvas


ID
702931
Banca
AOCP
Órgão
BRDE
Ano
2012
Provas
Disciplina
Banco de Dados
Assuntos

Sobre Integridade de Entidade, Integridade Referencial e Chave Estrangeira em Entidade e Relacionamentos, analise as assertivas e assinale a alternativa que aponta a(s) correta(s).

I. A restrição de integridade de entidade estabelece que nenhum valor de chave primária pode ser null. Isso porque o valor da chave primária é usado para identificar as tuplas individuais em uma relação.

II. Todas as restrições de integridade deveriam ser especificadas no esquema do banco de dados relacional, caso queiramos impor essas restrições aos estados do banco de dados.

III. Ter valores null para chave primária implica não podermos identificar alguma tupla.

IV. A restrição de integridade referencial é classificada entre duas relações e é usada para manter a consistência entre as tuplas nas duas relações.

Alternativas
Comentários
  • A questão trata das restrições de integridade, que são utilizadas para garantir a consistência dos dados em um banco de dados relacional.
    Alguns tipos dessas restrições são tratados nas alternativas da questão:
    Alternativa I - Restrição de entidade - define que nenhuma chave primária deve aceitar o valor "NULL", caso contrário, poderíamos ter várias tuplas com chave primária contendo o mesmo valor, ou seja, o valor NULL. Impedindo que pudéssemos identificar essas tuplas de forma única.
    Altenativa II - As restrições de integridade devem ser implementadas no próprio banco de dados. Dessa forma o SGDB pode, utilizando seus mecanismos internos, garantir, com eficiência, a consistência dos dados. Outros tipos de restrições, relacionadas às regras de negócio, serão implementadas na aplicação.
    Alternativa III - Idem à alternativa I.
    Alternativa IV - A integridade referencial é o tipo de integridade que provê a consistência de dados relacionados entre duas ou mais tabelas. Especificamente, refere-se à chave estrangeira em uma tabela e a chave primária correspondente em outra tabela, assim como quais ações os SGDB deverá executar nos dados associados às chaves estrangeiras quando ocorrerem mudanças (exclusão, alteração) na chave primária relacionada.
    Há outras restrições de integridade que precisam ser aplicadas a um BD. Exemplo: de domínio, de chave, de vazio etc.
  • Quanto à assertiva II a princípio julguei falsa, pois é possível implementar estas restrições a nível de aplicação, e não obrigatoriamente diretamente no esquema do BD. Mas depois reli com mais atenção, e a alternativa faz o uso da palavra deveriam:

     

    "Todas as restrições de integridade deveriam ser especificadas no esquema..."

     

    Logo parece mais uma recomendação do que uma obrigação, então acredito que esteja correta mesmo.

  • Pensei que o termo "deveriam" fosse nóia do Avaliador, mas não, ta exatamente como  na 4ª edição do Navathe, na 6ª, ele ja muda...

    NAVATHE,  4ª ed. cap 5, p.98 "vessículo" 5.2.4: "..Todas as restrições de integridade deveriam ser especificadas no esquema do banco de dados relacional, caso queiramos impor essas restrições aos estados do banco de dados."

    NAVATHE,  6ª ed. cap 3, p.49 "vessículo" 3.2.4: "...Todas as restrições de integridade deverão ser especificadas no esquema de banco de dados relacional (ou seja, definidas como parte de sua definição) se quisermos impor essas restrições sobre os estados do banco de dados."