Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Dúvida] Modelo Aula 2

De acordo com o modelo cedido pela instrutora no final da aula 2, qual o motivo de não ser NOT NULL esses ID's de chave primária?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Oi William, tudo bem?

De fato, para tornar o modelo mais assertivo e como boa prática, seria ideal colocar e sinalizar com NOT NULL as PKs das tabelas, assim como a instrutora fez em outras tabelas.

Por padrão, toda chave primária já é obrigatoriamente NOT NULL. Por definição do modelo relacional, uma Chave Primária (PRIMARY KEY) tem duas regras fundamentais e obrigatórias:

  1. Unicidade: Os valores não podem se repetir.
  2. Não-Nulidade: O valor nunca pode ser nulo (NULL).

Quando criamos uma tabela e dizemos ao banco de dados que uma coluna é a PK, o próprio Sistema Gerenciador de Banco de Dados (SGBD) automaticamente proíbe a inserção de valores nulos ali.

Portanto, o correto para manter o padrão seria também sinalizar essas tabelas. É bem possível que tenha ocorrido apenas um esquecimento visual nessas tabelas, mas reforço que, por baixo dos panos, o banco de dados vai exigir o preenchimento desse ID de qualquer forma!

Deu para clarear sua dúvida com essa explicação?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!