📐 O MODELO RELACIONAL (FUNDAMENTOS)
O Modelo Relacional é a tradução da matemática para blocos de construção de sistemas. Ele organiza os dados em estruturas bidimensionais chamadas Relações (popularmente conhecidas como tabelas). 🛡️🧩
Objetivo: Compreender a terminologia técnica do modelo relacional e a anatomia estrutural de tabelas, tuplas e atributos.
📗 PASSO 1: Mapeamento de Terminologia
Para ser um Engenheiro de Dados respeitado, você deve dominar tanto a linguagem acadêmica (Teoria) quanto a linguagem de mercado (Prática/SQL).
| Formal (Matemático) | Informal (Mercado/SQL) | Descrição Técnica |
|---|---|---|
| Relação | Tabela | Conjunto de dados estruturados. |
| Tupla | Registro / Linha | Uma ocorrência específica de um dado. |
| Atributo | Coluna / Campo | Propriedade ou característica do dado. |
| Domínio | Tipo de Dado/Constraint | Valores permitidos (ex: INT, VARCHAR). |
| Cardinalidade | Nº de Linhas | Quantidade total de registros na tabela. |
| Grau | Nº de Colunas | Quantidade total de atributos na tabela. |
📗 PASSO 2: Anatomia de uma Relação (Tabela)
Observe como o SGBD (MySQL ou PostgreSQL) visualiza a estrutura de uma tabela internamente:
📊 Dicionário de Dados do Produto
erDiagram
PRODUTO {
int id_produto PK
string nome
decimal preco
}
📗 Visualização dos Dados (Tuplas)
Abaixo, a representação de como as tuplas (registros) preenchem a estrutura acima:
| id_produto (PK) | nome (Atributo) | preco (Atributo) |
|---|---|---|
| 1 | 'Laptop' | 4500.00 |
| 2 | 'Mouse' | 120.00 |
| 3 | 'Teclado' | 300.00 |
💡 Regras de Ouro de uma Relação:
- Ordem Inexistente: Na matemática e no banco, a ordem das linhas não importa.
- Atomicidade: Cada célula deve conter apenas um único valor.
- Unicidade: Não existem linhas iguais (garantido pela PK).
📗 PASSO 3: O Valor NULL (Nulo)
O valor NULL é um conceito especial do modelo relacional que representa:
- Informação desconhecida ou não aplicável.
⚠️ Nota para o Arquiteto: NULL não é ZERO nem VAZIO! Trate o NULL como um "buraco negro" de informação. Evite usá-lo em excesso para não complicar cálculos SQL. 🚀🛡️