SóProvas


ID
598483
Banca
CESPE / CEBRASPE
Órgão
EBC
Ano
2011
Provas
Disciplina
Banco de Dados
Assuntos

Considerando que um SGBD é um pacote de software para a implementação e manutenção de bancos de dados computacionais, julgue os itens a seguir.

O SQL Server oferece os seguintes tipos de integridade de dados: integridade de domínio, integridade de entidade e integridade referencial.

Alternativas
Comentários
  • Integridade de Domínio

    A integridade de domínio nada mais é do que a integridade do campo como o tipo de dados correto, se permite null ou not null, default´s, check´s constraints, estes mecanismos foram criados para dar integridade aos campos. Os tipos de dados também são caracterizados como integridade de domínio, se o tipo de dado estiver incorreto, ou com mais posições que o necessário, pode haver ali um risco que quebre a integridade. O check aqui é em nível de campo apenas por exemplo: Tenho um campo Meses e quero que entre valores de 1 até 12 somente.

    Integridade de Entidade

    A integridade de entidade nada mais é que a integridade da tabela, isto é conseguido através das Primary Keys ou Uniques, uma tabela sem PK ou Unique é uma tabela sem integridade de entidade, é muito comum pegarmos tabelas sem PK, alguns colocam campo identity e não se preocupam com as PK´s, mas esquecem que o campo identity não garante a não duplicidade.

    Integridade Referencial

    A integridade referencial é mais conhecida, são as Foreign Keys, nada mais é que eu aceitar valores em minha entidade que estão em outra entidade, isto é possível a partir da integridade de entidade, eu apenas consigo criar Foreign Keys a partir de uma Primary Key ou uma Unique, a integridade referencial consiste também em check em nível de tabela e não em nível de campo

    fonte: http://www.linhadecodigo.com.br/Artigo.aspx?id=669
  • Acho interessante o critério de notas do pessoal aqui. O colega acima colocou um monte de termos que não estão corretos de acordo com a literatura retirados de um site qualquer e a galera atribui ótimo. Outros colocam comentários super plausíveis e a galera coloca ruim...
    O navathe define o seguinte:
    • Integridade de Domínio: garante que, dentro de cada tupla, o valor de cada atributo A deve estar dentro de um valor indivisível do domínio dom(A).
    • Integridade de entidade: nenhum valor de atributo que componha a PK poderá ter seu valor NULL, pois ele servirá para identificar tuplas de forma única em uma tabela.
    • Integridade de chave: uma PK deve possuir as propriedades de unicidade (deve identificar de forma única uma tupla em determinada relação) e minimalidade (é uma superchave mínima, ou seja, uma superchave da qual não podemos remover nenhum atributo e ainda mantermos a unicidade). Obs.: A propriedade de minimalidade não é exigida por uma superchave. Essa é a diferença de uma superchave para uma chave candidata!
    • Integridade referencial: os atributos de uma FK devem estar no mesmo domínio da chave (primária ou secundária) referenciada e uma FK ou referenciará uma dessas chaves ou terá seu valor como NULL.
  • Pois é, Luiz, acontece que a questão quer saber sobre os tipos de integridade de um produto específico que é o SQL Server, e a que vc colocou não é especificamente dele. Só a título de informação, há vários outros tipos de integridade, que diversos autores, como [1] elenca, como(no caso da abordagem relacional):

    - Integridade de domínio, onde o valor de um campo deve obedecer a definição de valores admitidos para a coluna (o domínio da coluna).

    - Integridade de vazio, onde se especifica se os campos de uma coluna podem ou não ser vazios (se a coluna é obrigatória ou opcional).

    - Integridade de chave, que trata da restrição que define que os valores da chave primária e alternativa devem ser únicos. - Integridade referencial, que é a restrição que define que os valores dos campos que aparecem em uma chave estrangeira devem aparecer na chave primária da tabela referenciada.

    Em seguida, [1] prossegue com outros exemplos, afirmando haver muitas outras restrições de integridade que não se encaixam em nenhuma das categorias acima e que normalmente não são garantidas pelo SGBD. Essas restrições são chamadas de restrições semânticas. Alguns exemplos de restrições deste tipo poderiam ser:

    - Um empregado do departamento denominado “Finanças” não pode ter a categoria funcional “Engenheiro”.

    - Um empregado não pode ter um salário maior que seu superior imediato.

    Pare estes últimos casos, como o autor não fala de integridade de entidade e como o exemplo descrito se encaixa perfeitamente nesse conceito, pois os termos descritos são entidades, infere-se que são restrição de entidade.

    Perceba que descrevemos diversos tipos de integridade, e a questão arrola apenas 3 deles que o SQL possui, o que não invalida a questão. Mesmo que ele citasse apenas um desses três, ainda assim ela estaria correta.

    Fonte:

    [1] SBD, Heuser.

  • 1. Integridade de entidade

    Esse tipo de restrição está relacionado às regras impostas pelas chaves primárias. A integridade de entidade define somente que cada chave primária deve ser única e não nula. Também é conhecida como integridade primária ou de chave primária.

    2. Integridade referencial

    A integridade referencial está relacionada ao conceito de chave estrangeira. A regra simplesmente determina que uma chave estrangeira só pode estar em dois estados:

    a) Fazendo referência a um registro válido da tabela referenciada;

    b) Assumindo o valor NULL, caso em que o registro em questão não participa do relacionamento. 

    3. Integridade de domínio

    domínio é o conjunto dos valores possíveis para um determinado atributo. Dessa forma, a integridade de domínio determina que os valores de todas as colunas, em todos os registros de um banco de dados fazem parte de seus respectivos domínios. Por exemplo, se dizemos que um atributo é de um tipo numérico, um registro não poderá nunca ter um valor textual para esse atributo. Dentro da integridade de domínio temos uma subcategoria chamada integridade de vazio. Essa restrição determina se o atributo pode ou não assumir valores nulos.