Programação

terça-feira, 10 de março de 2026

M3 - Programação em SQL

  •  Definir estrutura de uma base de Dados com SQL - DDL
  • Manipular os dados em SQL- DML
  • Consultas em SQL envolvendo várias tabelas


DEFINIÇÃO

BASE DE DADOS RELACIONAL  
Uma Base de Dados Relacional é um tipo de base de dados que organiza a informação em tabelas relacionadas entre si.

Esse modelo foi proposto por Edgar F. Codd em 1970 e é hoje o modelo mais utilizado em sistemas de gestão de dados (SGBD).

Exemplos de Sistemas de Gestão de Bases de Dados Relacionais

Alguns sistemas populares:

Todos utilizam a linguagem SQL para manipular dados.


EXEMPLO de uma BD no SGBD MariaDB (improved of MySQL/)

ESTRUTURA de uma Base de Dados 


Nome da Base de Dados: "comprarcarros"

    constituída pelas tabelas:

                                        


Visualização dos dados nas tabelas 

Tabela Fornecedores

 

Tabela Carros

Tabela Compras




LINGUAGEM SQL (Structured Query Language)



4 TIPOS COMANDOS SQL
1️⃣ DDL Data Definition Language )  - definição de estrutura 
2️⃣ DML (Data Manipulation Language) - manipulação de dados 
                   DCL (Data Control Language)   - controlo de acesso 

                 TCL (Transaction Control Language)   - controlo de transações 


1️⃣DDL Data Definition Language )
    definição da estrutura de base de dados 

Comando

Função

CREATE 

              Criar bases de dados ou tabelas 

ALTER

              Alterar uma tabela

DROP

              Apagar uma tabela ou  a base de dados

TRUNCATE

RENAME

              Esvazia a tabela (apaga todos os dados)

              Renomeia a tabela


👉 É o conjunto de comandos usados para criar, alterar e apagar a estrutura da base de dados (tabelas, colunas, etc.).

 

EXEMPLO comando DDL



2️⃣DML (Data Manipulation Language) 

Comando

Função

SELECT

INSERT    

         Selecionar dados

         Inserir dados

UPDATE

          Atualizar dados

DELETE

          Apagar dados

  

👉 É usado para manipular os dados dentro das tabelasou seja, trabalhar com os registos.


Exemplos

  


SQL não é case sensitive  ou seja, não distingue letras maiúsculas de minúsculas na maioria dos comandos. 


📘 Tipos de dados em SQL
Os tipos de dados definem que tipo de dados que pode ser armazenada numa coluna/campo de uma tabela.

Categoria

Tipo de dado

Descrição

Exemplo

Numérico

INT

Número inteiro

10

BIGINT

Inteiro muito grande

1000000

DECIMAL(p,s)

Número com precisão decimal

p (precision) → número total de dígitos

 s (scale) → número de casas decimais

10.50

FLOAT

Número com casas decimais aproximadas

3.14

 

Texto

 

CHAR(n)

Nº caracteres de tamanho fixo

"F", “M”

VARCHAR(n)

Texto de tamanho variável

"Maria"

TEXT

Texto longo

descrição grande

 

Data/Hora

DATE

Guarda apenas data

2026-03-16

TIME

Guarda hora

14:30:00

TIMESTAMP

Data e hora automática

2026-03-16 14:30

Lógico

BOOLEAN

Verdadeiro ou falso

TRUE

Binário

BLOB

Guarda ficheiros ou imagens

imagem


📊 Diferença entre DECIMAL e FLOAT

TipoCaracterísticaUso principal
DECIMAL     Valores exatos    💰Valores financeiros (preços, salários) e Classificações
FLOAT      Valores aproximados 🔬Cálculos científicos ou estatísticos (arredondamentos)
 

📊Métodos guardar imagens

Método     SQL                                         Vantagem
BLOB       foto Blob                                guarda a imagem dentro da base de dados

PATH      foto VARCHAR(255     mais rápido e mais usado em aplicações
 Guarda o caminho onde fica guardada a imagem - exemplo "/fotos/alunos/joao_silva.jpg"

  

EXEMPLO em SQL

CREATE TABLE Alunos (
    nprocesso INT PRIMARY KEY,
    nome VARCHAR(100),
    sexo CHAR(1),
    data_nascimento DATE,
    email VARCHAR(255),
    telefone CHAR(9),
    peso FLOAT,
    mediacurso DECIMAL(4,2),
    foto BLOB,
    ativo BOOLEAN,
    data_matrícula DATETIME
   observacoes TEXT;
);




1️⃣Principais Comandos SQL DDL 
1.1 CREATE  - Criar DB e Tabelas 
 
Criar uma base de dados
            Sintaxe                                                                                      Exemplo

CREATE DATABASE  nome_da_DB;

 CREATE DATABASE Loja;

Usar uma base de dados
        USE Loja;


Criar uma tabela  


Sintaxe                                                               

 

Exemplo

CREATE TABLE nome_da_tabela (
    campo1 tipo de dados  restrições,
    campo2  tipo de dados  restrições,
    campo3  tipo de dados  restrições
...
);

 Exemplo


1.2. ALTER   - Adicionar/ Modificar / Remover Coluna da tabela

 Adicionar coluna/campo

Sintaxe

Exemplo

ALTER TABLE nome_da_tabela  
ADD campo tipo de dados;
ALTER TABLE Clientes
ADD DataNascimento DATE 
CREATE TABLE Alunos (
    id INT PRIMARY KEY,
    nome VARCHAR(100),
    email VARCHAR(50),
    altura DECIMAL(10, 2)
 );
   
Modificar coluna/campo tipo de dados

Sintaxe

Exemplo

ALTER TABLE nome_da_tabela  
MODIFY campo tipo de dados;
ALTER TABLE Clientes
MODIFY email VARCHAR(255) 
 

Renomear uma coluna

Sintaxe

Exemplo

ALTER TABLE nome_da_tabela  
 RENAME COLUMN campo TO novocampo ;
ALTER TABLE Clientes
RENAME COLUMN DataNascimento TO DataNasc; 
 
       

Remover coluna

Sintaxe

Exemplo

ALTER TABLE nome_da_tabela  
DROP COLUMN nome_coluna;
ALTER TABLE Clientes
DROP COLUMN DataNasc ;


1.3. DROP  - Remover tabela


Sintaxe

Exemplo

DROP TABLE  nome_tabela;
DROP TABLE Clientes;


Remover Base de Dados

Sintaxe

Exemplo

DROP DATABASE nome_BD;
DROP DATABASE Loja;




1.4. TRUNCATE  - Esvazia a tabela

Sintaxe

Exemplo

TRUNCATE TABLE nome_tabela;
TRUNCATE TABLE Clientes;



1.5. RENAME  - renomear nome tabela

Sintaxe

Exemplo

RENAME TABLE nome_antigo TO nome_novo;
RENAME TABLE Clientes TO  Clients;