Douglas Legramante

Douglas Legramante

Informática

Técnico em Informática · Banco de Dados

15-Script DDL Completo + Revisão Geral do Bimestre

Script DDL Completo + Revisão Geral do Bimestre

1. Fechamento do bimestre

Hoje juntamos os dois blocos do bimestre: vamos pegar o cenário da Oficina Mecânica, que vocês já modelaram conceitualmente no Encontro 9, e escrever o script DDL completo — todas as tabelas, tipos de dados, constraints, chaves estrangeiras e índices — do zero, em SQL de verdade.

Isso é literalmente o "de trás para frente" do que fizemos a maior parte do bimestre: em vez de desenhar no Workbench e deixar a ferramenta gerar o SQL, hoje vocês escrevem o SQL direto, aplicando tudo que aprenderam sobre sintaxe.

2. Checklist de revisão geral do bimestre

Antes de começar, uma passada rápida por tudo que vimos:

BlocoConceitos-chave
1 — FundamentosDado x informação, SGBD, tabela/registro/campo, chave primária/estrangeira, MySQL
2 — Modelagem (DER)Entidade, atributo (4 tipos), relacionamento, cardinalidade (1:1, 1:N, N:N), Identifying x Non-Identifying, auto-relacionamento, mapeamento conceitual→lógico→físico
3 — SQL (DDL)CREATE DATABASE/TABLE, tipos de dados, NOT NULL, UNIQUE, ALTER TABLE, DROP TABLE, índices

Se algum item da tabela soar estranho, é sinal de dar uma olhada rápida no texto de apoio daquele encontro antes da Avaliação 2.

3. O cenário: Oficina Mecânica (do Encontro 9)

Mesmo cenário de antes — mas agora, em vez de desenhar, vamos escrever o SQL. Os campos de cada entidade estão no exercício; a escolha do tipo de dado de cada um é sua (aplicando o Encontro 12).

4. Estrutura sugerida do script

CREATE DATABASE oficina;
USE oficina;

CREATE TABLE cliente (...);
CREATE TABLE veiculo (...);
CREATE TABLE ordem_servico (...);
CREATE TABLE peca (...);
CREATE TABLE item_os (...);
CREATE TABLE mecanico (...);
CREATE TABLE cartao_fidelidade (...);
CREATE TABLE telefone_cliente (...);

CREATE INDEX ...;

Dica de ordem: crie primeiro as tabelas que NÃO dependem de nenhuma outra (ex.: cliente, mecanico, peca), e só depois as que têm FOREIGN KEY apontando para elas (ex.: veiculo depende de cliente; ordem_servico depende de veiculo e mecanico). Se você tentar criar uma FK para uma tabela que ainda não existe, o MySQL dá erro.

5. Prévia do próximo encontro

O Encontro 16 é a Avaliação 2 — teórico-prática, cobrindo conceitos do bimestre inteiro e DDL.