Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

🏗️ CAPÍTULO 02: FUNDAMENTOS DE SGBDS E SISTEMAS DE ARQUIVOS

Seja bem-vindo(a) à base da pirâmide do conhecimento em tecnologia. Nesta unidade, desconstruiremos a forma como as aplicações modernas armazenam e processam seu maior ativo: o Dado. 🛡️🧩


🎯 Objetivo Curricular

Compreender a diferença técnica entre dados e informações, a anatomia de um SGBD moderno e os quatro pilares (Autodescrição, Abstração, Visões e Concorrência) que tornam o modelo relacional indispensável para empresas.


🏢 O Cenário Prático (Seu Desafio)

Imagine que você assumiu como Arquiteto de Banco de Dados na TecProExpress. A empresa atualizou o sistema de rastreamento de entregas, mas o setor de atendimento ainda salva os contatos dos clientes no Excel.

"Seu desafio é demonstrar para a diretoria, de forma técnica e prática, por que manter dados de clientes em planilhas gera inconsistência e por que a TecProExpress deve centralizar tudo no novo SGBD."


🧠 Fundamentos: A Teoria Traduzida

1. O Ciclo de Vida da Informação

Na engenharia de software de alta performance, trabalhamos com ativos que seguem um fluxo de valor:

flowchart TD
    D["📄 DADO<br/>Fato Bruto"] --> P{"⚙️ SGBD<br/>Processamento"}
    P --> I["📊 INFORMAÇÃO<br/>Conhecimento"]
    I --> V["💰 VALOR<br/>Decisão Estratégica"]

🔍 Detalhamento do Fluxo:

  • DADO: Um fato isolado, por exemplo, o texto "TecProExpress". Sozinho, ele é mudo.
  • INFORMAÇÃO: O dado contextualizado. "TecProExpress é o nosso cliente VIP de transporte".
  • BANCO DE DADOS (DB): Uma coleção de dados logicamente relacionados.
  • SGBD (Sistema Gerenciador): O motor de execução (ex: MySQL 8.4) que processa esses dados em alta velocidade.

2. Por que não usar planilhas?

CaracterísticaPlanilhas (Excel) 📁SGBD Relacional (MySQL/Postgres) 🛡️
RedundânciaAlta (nomes repetidos)Minimizada e controlada
IntegridadeDepende de quem digitaAutomática com Constraints (CHECK, PK)
Acesso SimultâneoBloqueia o arquivo para outrosPermite milhares de transações ao mesmo tempo

📖 Exemplo Guiado: Protegendo os Dados (DDL -> DML)

A principal vantagem do SGBD é a Integridade. Veja como o SGBD impede erros que uma planilha permitiria. Lembre-se do fluxo obrigatório: primeiro desenhamos a tabela (DDL), depois inserimos o dado (DML).

🛠️ Código do Exemplo

-- PASSO 1: DDL (Criação da Estrutura com Regras)
CREATE TABLE cliente_vip (
    id INT PRIMARY KEY,
    nome VARCHAR(100) NOT NULL,
    limite_credito DECIMAL(10,2) CHECK (limite_credito >= 0)
);

-- PASSO 2: DML (Inserção Válida)
INSERT INTO cliente_vip (id, nome, limite_credito) VALUES (1, 'TecProExpress', 5000.00);

-- PASSO 3: Tentativa de Erro (O SGBD bloqueia!)
-- INSERT INTO cliente_vip (id, nome, limite_credito) VALUES (2, 'Transportadora B', -100.00);

🔍 Detalhamento do Código:

  • NOT NULL: Regra que impede que um cliente seja salvo sem nome. (No Excel, isso passaria).
  • CHECK (limite_credito >= 0): Regra matemática. O SGBD recusa qualquer limite de crédito negativo. O Passo 3 falharia de propósito para proteger os dados.

🛠️ Prática Obrigatória: Abstração de Dados

Cenário: O catálogo interno da TecProExpress. Um SGBD guarda a "receita" do banco (Metadados) em um Catálogo interno. Isso permite que diferentes perfis vejam o mesmo dado de formas diferentes.

  1. Crie uma visão (View) simulando o painel de um Gerente, que quer ver os dados de faturamento.
  2. Não se preocupe se errar a sintaxe avançada, foque na estrutura.

🚀 Script de Seed (Gabarito de Visão)

-- PASSO 1: DDL (Criar Tabela Mestre)
CREATE TABLE faturamento (
    id INT PRIMARY KEY,
    filial VARCHAR(50),
    lucro_total DECIMAL(15,2)
);

-- PASSO 2: DML (Popular)
INSERT INTO faturamento VALUES (101, 'São Paulo', 250000.00);
INSERT INTO faturamento VALUES (102, 'Rio de Janeiro', 180000.00);

-- PASSO 3: DDL (Criar a VIEW - Visão do Usuário)
CREATE VIEW relatorio_gerente AS
SELECT filial, lucro_total FROM faturamento WHERE lucro_total > 200000;

🔍 Detalhamento do Seed:

  • CREATE VIEW: Cria um "atalho" ou "lente virtual" que filtra os dados originais. O Gerente só verá a filial de São Paulo.

📤 Instruções de Entrega (Microsoft Teams)

Após validar seus códigos práticos e de estudo:

Use o operador e para critérios rigorosos e ou para critérios flexíveis. Salve os arquivos com a extensão .sql (Ex: Atividade_XX_SeuNome.sql ou Atividade_XX_SeuNome.png ou Atividade_XX_SeuNome.drawio


💡 Checkpoint de Lógica

[!IMPORTANT] Reflexão Profissional: Qual a diferença entre um DB (Database) e um DBMS (Sistema Gerenciador de Banco de Dados)? O DB é o arquivo salvo no disco rígido. O DBMS é o software (MySQL, Postgres) que você usa para conversar com esse arquivo e garantir a segurança dele de forma simultânea. 🧠🛡️