Questão de Banco de Dados — SQL — FGV 2023
- Código
- fg073198
- Banca
- FGV
- Órgão
- TJ-SE
- Ano
- 2023
- Nível
- Médio
- Cargo
- Técnico Judiciário - Especialidade - Programação de Sistemas
- ACHECK;
- BUNIQUE;
- CNOT NULL;
- DFOREIGN KEY;
- EPRIMARY KEY.
GabaritoE — PRIMARY KEY.
Gabarito: letra E – PRIMARY KEY. A restrição que garante identificação única de cada registro e não permite valores nulos é a chave primária (PRIMARY KEY), pois ela combina as propriedades de NOT NULL e UNIQUE. As demais alternativas não atendem simultaneamente aos dois requisitos.
A banca cobra o conhecimento das restrições clássicas do SQL. Vamos analisar cada alternativa com base nas definições do padrão SQL.
Característica | PRIMARY KEY | UNIQUE | NOT NULL | CHECK | FOREIGN KEY |
|---|---|---|---|---|---|
Garante unicidade dos valores | Sim | Sim | Não | Não | Não |
Não permite valores nulos | Sim | Não (permite múltiplos nulos) | Sim | Não | Não |
Identifica unicamente cada registro | Sim | Sim (mas permite nulos) | Não | Não | Não |
Função principal | Identificador único da linha | Garantir valores distintos | Impedir valores nulos | Validar condição | Integridade referencial |
A restrição CHECK serve apenas para validar condições em uma coluna, como garantir que um valor seja maior que zero. Ela não assegura unicidade nem impede valores nulos.
CHECK: Garante que os valores em uma coluna satisfaçam uma condição específica.
A restrição UNIQUE garante que todos os valores em uma coluna (ou conjunto de colunas) sejam diferentes entre si. Contudo, ela permite valores nulos (a menos que combinada com NOT NULL explicitamente). Portanto, não atende ao requisito de “não permitir valores nulos”.
UNIQUE: Garante que todos os valores em uma coluna sejam diferentes.
A restrição NOT NULL impede que uma coluna receba valores nulos, mas não impõe unicidade. Dessa forma, uma coluna com NOT NULL pode ter muitos registros, mas eles podem se repetir, violando a identificação única.
NOT NULL: Garante que uma coluna não pode ter um valor NULL.
FOREIGN KEY é usada para assegurar a integridade referencial entre tabelas, impedindo ações que destruam os vínculos. Não diz respeito à unicidade nem a valores nulos na própria tabela.
FOREIGN KEY: Impede ações que destruiriam links entre tabelas.
A PRIMARY KEY é a única restrição que, por definição, combina as propriedades de NOT NULL e UNIQUE. Ela identifica exclusivamente cada linha em uma tabela e não permite valores nulos, exatamente como descrito no enunciado.
PRIMARY KEY: Uma combinação de NOT NULL e UNIQUE. Identifica exclusivamente cada linha em uma tabela.
Cuidado com a alternativa B (UNIQUE)! Muitos candidatos acham que UNIQUE também proíbe nulos, mas não é verdade. A PRIMARY KEY é que faz isso. Lembre-se: UNIQUE pode ter nulos (normalmente apenas um, dependendo do SGBD), enquanto PRIMARY KEY jamais aceita nulos.
Gabarito: letra E – PRIMARY KEY.
Link permanente: /questoes/fg073198