MySQL - Chave estrangeira no conjunto de exclusão nulo no campo não nulo
Esta é provavelmente uma questão trivial, mas eu ainda sou um pouco desajeitado quando se trata de restrições de chave estrangeira, então eu queria ter certeza.
Vamos dizer que eu tenho uma mesacountries
com os camposcountry_id
(PK) ename
e uma mesacities
com os camposcity_id
(PK),name
ecountry_id
(FK)
A chave estrangeiracities.country_id
tem a restriçãoON DELETE SET NULL
. Pelo que entendi, isso significa que, se um registro decountries
é excluído, todos os registroscities
essa referência que apagou registrocountry_id
terá suacountry_id
campo definido como NULL.
E se, no entanto,cities.country_id
tem o atributoNOT NULL
? Isso impedirá que a restrição de chave estrangeira funcione corretamente? Isso faria sentido, mas eu só quero checar.