Objetivo: Traduzir o modelo lógico para as regras do SGBD, aplicar normalização e preparar o ambiente de trabalho.
Tópicos:
Chaves de Identificação: Chave Primária (PK) e Chave Estrangeira (FK).
Normalização de Dados: 1ª, 2ª e 3ª Formas Normais (como evitar redundância e anomalias).
Tipos de Dados: Inteiros, Decimais, Textos (VARCHAR) e Datas (DATE/DATETIME).
Configuração de SGBD: Instalação e configuração de um SGBD (ex: MySQL/MariaDB ou PostgreSQL) e uso de ferramentas visuais (ex: MySQL Workbench, DBeaver ou phpMyAdmin).
Prática: Conversão do diagrama lógico da semana anterior em um Modelo Físico compatível com o SGBD escolhido.
Semana 1: Fundamentos e Modelagem Lógica
Objetivo: Compreender o que é um banco de dados relacional e desenhar a estrutura da informação antes de ir para o computador.
Tópicos:
Introdução a Banco de Dados: O que são dados, informação, Banco de Dados (BD) e Sistemas Gerenciadores de Banco de Dados (SGBD).
O Modelo Relacional: Conceito de Tabelas (Entidades), Colunas (Atributos) e Linhas (Registros/Tuplas).
Modelagem Entidade-Relacionamento (MER/DER): Como mapear o mundo real para o papel.
Relacionamentos e Cardinalidade: Ligações de 1:1, 1:N (Um para Muitos) e N:M (Muitos para Muitos).
Prática: Criação de diagramas lógicos baseados em cenários reais (ex: sistema de biblioteca ou loja).
Carga Horária Total: 40 Horas
Duração: 5 Semanas (8 horas por semana)
Ementa: Criação de modelos lógicos e físicos de banco de dados, manipulação dos dados através da linguagem SQL e configuração de Sistemas Gerenciadores de Banco de Dados (SGBD).
Objetivo: Compreender o que é um banco de dados relacional e desenhar a estrutura da informação antes de ir para o computador.
Tópicos:
Introdução a Banco de Dados: O que são dados, informação, Banco de Dados (BD) e Sistemas Gerenciadores de Banco de Dados (SGBD).
O Modelo Relacional: Conceito de Tabelas (Entidades), Colunas (Atributos) e Linhas (Registros/Tuplas).
Modelagem Entidade-Relacionamento (MER/DER): Como mapear o mundo real para o papel.
Relacionamentos e Cardinalidade: Ligações de 1:1, 1:N (Um para Muitos) e N:M (Muitos para Muitos).
Prática: Criação de diagramas lógicos baseados em cenários reais (ex: sistema de biblioteca ou loja).
Objetivo: Traduzir o modelo lógico para as regras do SGBD, aplicar normalização e preparar o ambiente de trabalho.
Tópicos:
Chaves de Identificação: Chave Primária (PK) e Chave Estrangeira (FK).
Normalização de Dados: 1ª, 2ª e 3ª Formas Normais (como evitar redundância e anomalias).
Tipos de Dados: Inteiros, Decimais, Textos (VARCHAR) e Datas (DATE/DATETIME).
Configuração de SGBD: Instalação e configuração de um SGBD (ex: MySQL/MariaDB ou PostgreSQL) e uso de ferramentas visuais (ex: MySQL Workbench, DBeaver ou phpMyAdmin).
Prática: Conversão do diagrama lógico da semana anterior em um Modelo Físico compatível com o SGBD escolhido.
Objetivo: Começar a codificar o banco de dados, criando as tabelas e manipulando os primeiros registros.
Tópicos:
Introdução ao SQL: O padrão universal de comunicação com bancos relacionais.
DDL (Data Definition Language): Comandos CREATE (criar tabelas e bancos), ALTER (modificar estruturas) e DROP (excluir).
DML (Data Manipulation Language) - Inserção: Comando INSERT INTO para popular as tabelas.
DML - Atualização e Exclusão Segura: Uso do UPDATE e DELETE (A regra de ouro: Nunca faça UPDATE/DELETE sem WHERE).
Laboratório: Script de criação das tabelas do projeto e inserção de dados fictícios.
Objetivo: Extrair informações específicas e cruzar dados de diferentes tabelas para gerar relatórios úteis.
Tópicos:
Consultas Básicas (DQL): O comando SELECT, uso da cláusula WHERE e operadores lógicos/relacionais (AND, OR, LIKE, IN).
Ordenação e Agrupamento: ORDER BY, GROUP BY e a restrição HAVING.
Funções de Agregação: Contagens, somas e médias (COUNT, SUM, AVG, MAX, MIN).
Junções de Tabelas (JOINs): Cruzando dados com INNER JOIN, LEFT JOIN e RIGHT JOIN.
Laboratório: Geração de "relatórios" via SQL (ex: listar todos os clientes que compraram um produto específico no último mês).
Objetivo: Administrar o banco de dados, criar rotinas de segurança e aplicar todo o conhecimento em um banco funcional.
Tópicos:
Controle de Acesso (DCL): Criação de usuários e distribuição de permissões (GRANT e REVOKE).
Controle de Transações (TCL): Protegendo operações críticas com COMMIT e ROLLBACK.
Backup e Restauração: Como exportar (Dump) e importar um banco de dados completo.
Projeto Final Integrador: Modelagem, implementação, inserção de dados e criação de um conjunto de consultas complexas para um cenário de software proposto pelo professor (ex: Sistema de Matrículas Escolares).
Atividade
Descrição
Peso
Quiz e Modelagem Lógica
Exercício de desenho de Diagramas de Entidade-Relacionamento e aplicação de chaves e normalização.
20%
Laboratório Prático de SQL
Criação de um banco via scripts DDL e manipulação básica de dados (DML) em tempo real.
30%
Projeto Final de Banco de Dados
Entrega do modelo físico completo de um sistema, script de geração, script de população (dados) e execução de 5 JOINs complexos com sucesso.
50%