8.
SQL
REDES DE COMPUTADORES E LÓGICA PARA COMPUTAÇÃO - EDITAL Nº 90/2024
Prof. Me. Caio César de Freitas Dantas
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
Objetivos
•Entender o que é SQL e sua importância.
•Aprender a estrutura básica de comandos SQL.
•Explorar operações fundamentais como SELECT, INSERT, UPDATE e
DELETE.
•Compreender conceitos de banco de dados relacionais e chaves
primárias/estrangeiras.
•Aplicar conceitos em exercícios práticos.
2
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
Introdução
•Falar de Projetos de Bancos de Dados
3
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
Introdução
•Falar de Projetos de Bancos de Dados
•Padrao de linguagem pra manipular dados
•Imagens de tabelas e relacionamento entre tabelas
4
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Definição
•Falar de Projetos de Bancos de Dados
•Padrao de linguagem pra manipular dados
5
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Características
•Falar de Projetos de Bancos de Dados
•Padrao de linguagem pra manipular dados
6
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Importância
•Falar de Projetos de Bancos de Dados
•Padrao de linguagem pra manipular dados
7
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Aplicações
•Falar de Projetos de Bancos de Dados
•Padrao de linguagem pra manipular dados
8
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Elementos Principais
•Cláusulas
•Operadores lógicos e relacionais
•Funções de agregação
•Expressões
•Predicados
9
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Elementos Principais
•Cláusulas
•WHERE, ORDER BY, GROUP BY, HAVING, LIMIT.
10
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Elementos Principais
•Operadores lógicos e relacionais
11
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Organização
Subconjuntos
DQL - Linguagem de Consulta de Dados
DML - Linguagem de Manipulação de Dados
DDL - Linguagem de Definição de Dados
DCL - Linguagem de Controle de Dados
DTL - Linguagem de Transação de Dados
12
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Organização
Subconjuntos
DQL - Linguagem de Consulta de Dados
DML - Linguagem de Manipulação de Dados
DDL - Linguagem de Definição de Dados
DCL - Linguagem de Controle de Dados
DTL - Linguagem de Transação de Dados
13
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
Explicação
Principais comandos
CREATE, ALTER, DROP
Create Table - cria Tabelas Create View - cria Visões do Banco de Dados Create Index -
define índice sobre uma Tabela Alter Table - altera a estrutura de Tabelas existentes Drop
Table - elimina uma Tabela do Banco de Dados Drop View - elimina uma Visão do sistema
Drop Index - elimina um índice definido para uma Tabela
14
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
Tipos de Dados – Domínio
Int
Float
Varchar
Etc
15
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
CREATE
Definição
Sintaxe
Exemplos
16
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
ALTER
Definição
Sintaxe
Exemplos
17
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
DROP
Definição
Sintaxe
Exemplos
18
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DDL – Linguagem de Definição de Dados
TRUNCATE
Definição
Sintaxe
Exemplos
19
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DML – Linguagem de Manipulação de Dados
Os comandos DML são usados para manipular os dados:
•INSERT: adiciona novos registros a uma tabela.
•UPDATE: modifica registros existentes em uma tabela.
•DELETE: remove registros de uma tabela.
20
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DML – Linguagem de Manipulação de Dados
•INSERT:
• Definição
• Sintaxe
• Exemplos
•
21
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DML – Linguagem de Manipulação de Dados
•UPDATE:
• Definição
• Sintaxe
• Exemplos
•
22
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DML – Linguagem de Manipulação de Dados
•DELETE:
• Definição
• Sintaxe
• Exemplos
•
23
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DQL – Linguagem de Consulta de Dados
Os comandos DQL são usados para consultas:
•SELECT: recupera dados de uma ou mais tabelas do banco de dados. É o
comando principal para consultas.
24
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DQL – Linguagem de Consulta de Dados
•SELECT:
•Definição
•Sintaxe
•Exemplos
25
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DQL – Linguagem de Consulta de Dados
•SELECT:
•Exemplos
26
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DCL – Linguagem de Controle de Dados
Os comandos DCL controlam permissões de acesso e os comandos:
•GRANT: Concede permissões a usuários ou funções para acessar objetos de
banco de dados.
•REVOKE: Remove permissões previamente concedidas a usuários.
27
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DCL – Linguagem de Controle de Dados
•GRANT: Concede permissões a usuários ou funções para acessar objetos de
banco de dados.
Definição
Sintaxe
Exemplos
28
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
DCL – Linguagem de Controle de Dados
•REVOKE: Remove permissões previamente concedidas a usuários.
Definição
Sintaxe
Exemplos
29
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
TCL – Linguagem de Controle de Transações
Os comandos TCL gerenciam transações:
•COMMIT: Confirma uma transação, tornando as alterações permanentes no
banco de dados.
•ROLLBACK: Desfaz uma transação e restaura o banco de dados ao estado
anterior.
•SAVEPOINT: Define um ponto de salvamento em uma transação, permitindo o
rollback parcial.
•SET TRANSACTION: Define características de transação, como isolamento e
nível de isolamento.
30
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
TCL – Linguagem de Controle de Transações
•COMMIT: Confirma uma transação, tornando as alterações permanentes no
banco de dados.
•Definição
•Sintaxe
•Exemplos
31
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
TCL – Linguagem de Controle de Transações
•ROLLBACK: Desfaz uma transação e restaura o banco de dados ao estado
anterior.
•Definição
•Sintaxe
•Exemplos
32
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Funções de Agregação
•Count
•Max/Min
•Sum/Avg
33
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Junções
•INNER JOIN: Registros com correspondência em ambas as tabelas.
•LEFT JOIN: Todos os registros da tabela à esquerda.
•RIGHT JOIN: Todos os registros da tabela à direita.
•FULL OUTER JOIN: Combinação de ambos.
34
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Triggers
•Count
•Max/Min
•Sum/Avg
35
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Restrições de Integridade
•PRIMARY KEY
•FOREIGN KEY
•REFERENCES
•CHECK
•UNIQUE
•NOT NULL
36
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Funcionamento
•ROLLBACK: Desfaz uma transação e restaura o banco de dados ao estado
anterior.
•Definição
•Sintaxe
•Exemplos
37
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Vantagens x Desvantagens
•ROLLBACK: Desfaz uma transação e restaura o banco de dados ao estado
anterior.
•Definição
•Sintaxe
•Exemplos
38
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Sistemas de Gerenciamento de Bancos de Dados
•MySQL: conhecido por sua confiabilidade e facilidade de uso. É amplamente
utilizado em aplicações web, especialmente em combinação com as linguagens
de programação PHP, JavaScript e Apache.
•PostgreSQL: é um sistema de banco de dados relacional objeto que suporta
extensões e permite armazenar e escalar dados complexos.
•Microsoft SQL Server: oferece extensos recursos para análise de dados,
inteligência empresarial e aplicações críticas.
•Oracle Database: é frequentemente a escolha para grandes aplicações
empresariais, sistemas de processamento de transações online e data
warehousing.
39
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Ferramentas
•MySQL Workbench
•PostgreSQL
•SQLite
•Microsoft SQL Server
•Ferramentas online: db-fiddle, SQLZoo, W3Schools
40
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Práticas Recomendadas
•Use nomes significativos para tabelas e colunas.
•Adicione comentários ao código SQL para facilitar entendimento.
•Utilize índices para otimizar consultas.
•Sempre faça backups antes de operações críticas.
•Evite SQL Injection: use parâmetros preparados.
41
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
SQL – Exemplo Prático
•Exemplo Passo a Passo
42
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
Conclusão
O SQL é uma linguagem fundamental no gerenciamento e análise de dados, e proporcionou
desenvolvimentos significativos na gestão de dados e no processamento de informações.
O uso do SQL ajuda na criação de diversas soluções, desde sistemas simples até os mais complexos.
Além da capacidade de manipular grandes volumes de informações de forma eficiente, permitindo
que organizações tomem decisões baseadas em dados com maior agilidade e precisão.
43
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
Referências
KUROSE, J. F.; ROSS, K. W. Redes de computadores e a Internet: uma abordagem
top-down. 5ª ed. São Paulo: Pearson, 2010. 640p.
TANENBAUM, A. S.; WETHERALL, D. Redes de computadores. 5ª ed. São Paulo:
Pearson, 2011. 600p.
COMER, D. E. Redes de computadores e Internet. 4ª ed. Porto Alegre: Bookman,
2007. 720p.
FOROUZAN, B. A. Comunicação de dados e redes sem-fio. 4ª ed. Rio de Janeiro:
McGraw-Hill, 2008. 1134p.
44
Introdução Definição Características Camadas Protocolos Aplicação Transporte Rede Enlace Conclusão
FIM!
45