Programação

segunda-feira, 23 de fevereiro de 2026

MODELO RELACIONAL e NORMALIZAÇÃO

         MODELO RELACIONAL 

O modelo relacional de Bases de Dados é um dos modelos mais utilizados atualmente pois é adotado pela maioria dos SGBDcomo MySQL, PostgreSQL, Oracle Database e SQL Server, entre outros.

  • Desenvolvido por Edgar F. Codd, na década de 1970

📌 Definição

Modelo Relacional de Bases de Dados armazena organiza os dados em tabelas (relações), que se relacionam entre si através de chaves primárias (PK) e estrangeiras (FK)


                            Tabela ALUNOS da entidade ALUNO


📌CARACTERÍSTICAS 
  • os dados são armazenados em tabelas (linhas e colunas)
  • Cada tabela representa uma entidade do mundo real (por exemplo: AlunoProdutoConsulta
  • Cada linha corresponde a um registo (tuplo)
  • Cada coluna/campo corresponde a um atributo.
  • utiliza chaves primárias para identificar de forma única cada registo da tabela
  • utiliza chaves estrangeiras para criar relações entre as tabelas
  • Permite a manipulação dos dados através da linguagem SQL.


            Relacionamento da Tabela ALUNOS com a Tabela CURSOS

📌 Vantagens do modelo relacional

  • Boa organização dos dados - Os dados são estruturados em tabelas (ou relações), facilitando o entendimento e a gestão das informações.

  • Redução da redundância de dados - Evita a duplicação de informações, economizando espaço e prevenindo inconsistências.

  • Garante a integridade e consistência dos dados – Regras como chaves primárias e estrangeiras garantem que os dados permaneçam corretos e confiáveis.

  • Facilita a pesquisa e atualização da informação - A linguagem SQL permite consultas complexas, além de inserções, alterações e exclusões de dados de forma eficiente.

  • Permite segurança e controlo de acessos – É possível definir quem pode ler, inserir ou alterar informações, garantindo proteção e privacidade dos dados.

  • Amplamente utilização - É o modelo mais adotado em sistemas atuais, com grande suporte de ferramentas e profissionais especializados.


    🔹 Estrutura das tabelas 

🧠 Nome da tabela: deve refletir os dados que ela guarda

TABELA:    Estrutura bidimensional que armazena dados de uma entidade.

LINHA ou REGISTO:  Representa uma ocorrência específica de uma entidade (linha de dados)

CAMPO ou COLUNA: representa as características/ propriedades (atributoda entidade.

DOMÍNIO: Define os valores permitidos para um atributo.    

(ex: no campo IdCurso,  os domínios são os valores: 290 , 122 ,etc  )


🔑 Chave Primária (Primary Key - PK)
✅ Definição
  Campo (ou conjunto de campos) que Identifica de forma única cada registo de uma tabela.

✔️ Características

  • Não pode repetir valores
  • Não pode ser nula (vazia)
  • Existe apenas uma PK por tabela

🔗 Chave Estrangeira (Foreign Key – FK)

Definição

Campo que liga uma tabela a outra, referenciando a chave primária de outra tabela.

✔️ Serve para:

  • criar relações entre tabelas
  • manter integridade dos dados

🔑 Chave Candidata (Candidate Key)

✅ Definição:

É qualquer campo (ou conjunto de campos) que identificar de forma única cada registo de uma tabela e que pode ser selecionado para ser a chave primária.

👉 EXEMPLO: 

Na tabela Alunos podemos ter vários campos podem ser candidatos a PK:   NProcesso, NIF, CC

Deve escolher a que melhor representa a respetiva tabela para ser a chave primária


🔑 Chave Composta (Composite Key)

✅ Definição:

👉 É uma chave primária formada por dois ou mais campos, cuja combinação identifica de forma única cada registo de uma tabela.

Exemplo:

 É o caso mais comum.

Tabela Inscrições

NProcesso        IdDisciplina
123
123
          SI
          OEAG      
👉 Assim, a  chave primária é formada por 2 campos (chave composta).
    🔑 PK = (NProcesso + idDisciplina)
Atualmente, usa-se pouco a chave composta, sendo substituída um campo único (chave artificial)
 🔑 PK = IdInscricao (auto-incremento)


    • NORMALIZAÇÃO
    • Normalização é o processo de organizar os dados em uma Base de Dados Relacional para:

      • evitar redundância (repetição de dados)

      • evitar inconsistências

      • facilitar manutenção e integridade

      Deve ser aplicado um conjunto de Regras para atingir esses objetivos 


    • 📊 As Formas Normais

    • 🔹 1ª Forma Normal (1FN)
    • Regra:

    • Não pode haver multivalores dentro de uma célula.

    • Cada campo/coluna deve ter apenas um único valor (atómico)

    • Se houver atributos com valores compostos (ex: Endereço) devem dividir atributos em valores atómicos

    • Se houver atributos com valores multivalores devem colocá-los em nova tabela e relacioná-la com a anterior.

    • 🔹 2ª Forma Normal (2FN)
    •                        Regra:
  • -Deve estar na 1FN 
    - todos os campos não-chave devem depender da chave primária.

    A 2FN só é um problema quando a tabela tem chave primária composta

  •  

    • 🔹 3ª Forma Normal (3FN)
    • Regra:

      -Deve estar na 2FN
      - não existem dependências transitivas
      (atributo não pode depender de outro atributo que não seja chave)



Sem comentários:

Enviar um comentário