No MS SQL Server, a especificação de chaves estrangeiras (fo...

Próximas questões
Com base no mesmo assunto
Q873277 Banco de Dados
No MS SQL Server, a especificação de chaves estrangeiras (foreign keys) admite o uso das cláusulas ON UPDATE e ON DELETE.
As opções que complementam essas cláusulas são:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a E - NO ACTION, CASCADE, SET NULL, SET DEFAULT.

No SQL Server, ao definir uma chave estrangeira (foreign key), temos opções para especificar o comportamento do banco de dados quando ocorrem atualizações (ON UPDATE) ou exclusões (ON DELETE) nas linhas da tabela referenciada pela chave estrangeira. Estas opções determinam como o banco de dados deve reagir a essas operações, garantindo a integridade referencial.

As opções disponíveis são:

  • NO ACTION: Se um esforço for feito para deletar ou atualizar uma linha que possui uma chave estrangeira que referencie outra tabela, e existir uma linha correspondente na tabela referenciada, a tentativa será bloqueada e um erro será exibido. É a ação padrão caso nenhuma outra seja especificada.
  • CASCADE: Se uma linha referenciada for deletada ou atualizada, todas as linhas que contêm as chaves estrangeiras correspondentes também serão deletadas ou atualizadas.
  • SET NULL: Se ocorrer uma exclusão ou atualização na linha referenciada, as colunas da chave estrangeira nas linhas relacionadas serão configuradas para NULL (assumindo que a coluna permite valores NULL).
  • SET DEFAULT: Similar ao SET NULL, mas em vez de configurar a coluna da chave estrangeira para NULL, será configurado para o valor padrão definido na coluna. O valor padrão deve ser um valor válido de acordo com as restrições da tabela referenciada.

Esses comportamentos são fundamentais para manter a consistência dos dados dentro de um banco de dados relacional. Ao se preparar para um concurso, é importante estar familiarizado com essas opções, pois elas são parte integrante do design e manutenção de um banco de dados eficiente.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

São opções para as chaves estrangeiras, tentando simplificar ao máximo:

 

RESTRICT: Rejeita a atualização ou exclusão de um registro da tabela pai, se houver registros na tabela filha.

 

CASCADE: Atualiza ou exclui os registros da tabela filha automaticamente, ao atualizar ou excluir um registro da tabela pai.

 

SET NULL: Define como null o valor do campo na tabela filha, ao atualizar ou excluir o registro da tabela pai.

 

NO ACTION: Equivalente ao RESTRICT.

 

SET DEFAULT: Define o valor da coluna na tabela filha, como o valor definido como default para ela, ao excluir ou atualizar um registro na tabela pai.

 

https://pt.stackoverflow.com/questions/211737/qual-%C3%A9-a-finalidade-das-op%C3%A7%C3%B5es-restrict-cascade-set-null-e-no-action

 

 

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo