SlideShare uma empresa Scribd logo
SQL Básico:
Teoria e Prática
Um grande resumo...
Um pouco de história
Características básicas
Características básicas
● Exemplo de tabela
● Um banco de dados é um conjunto de
tabelas.
● Representa aspectos da vida real.
Nome RA Nota
Bonifácio Cubas 125159 9,5
Ana Cintra 125148 8,0
Modelos lógicos
● São modelos de dados
● É uma representação teórica
de como será a implementação
do banco de dados
● Deve ser independente de
tecnologia Image: FreeDigitalPhotos.net
Modelos lógicos
● Informações concisas e necessárias para
o negócio
● Identifica redundâncias
● Identifica dados não utilizados
● Permite estabelecer regras de
integridade de dados
Image: FreeDigitalPhotos.net
Modelos lógicos
Image: FreeDigitalPhotos.net
Aluno
Matrícula
Nome
Endereço
Data
Nascimento
● Um modelo é formado
por:
○ Entidades
○ Atributos
Atributo identificador
(Chave Primária)
Modelos lógicos
Image: FreeDigitalPhotos.net
Aluno:
#Matrícula
Nome
Endereço
Data Nascimento
Outra maneira de
representar
Relacionamentos
● Diagramas de entidas
○ Utilizaremos a metodologia DER: Diagrama
Entidade-Relacionamento
○ DER representa a associação de cada entidade
através de relacionamentos
Entidade 1 Entidade 2Relacionamento
Relacionamentos
● DER
Entidade 1 Entidade 2Um ou muitos
Entidade 3
Um e somente
um
Um ou muitos
Um ou nenhum
Exemplo de
relacionamento
Exemplos
● Exemplo: Cliente
○ Uma empresa controla os seguintes dados de seus
clientes:
■ Código
■ Nome
■ Endereço
■ Telefone
Cliente:
#Código
Nome
Endereço
Telefone
Exemplos
● Exemplo: Cliente
○ A empresa vende diversos produtos a seus clientes:
■ Cada cliente pode comprar quantos produtos
precisar
■ Cada pedido de venda pode ser composto por
vários produtos
Pedido:
#Código
Cliente
Data
Valor
Detalhe Pedido:
#Código Pedido
#Código Produto
Quantidade
Valor
Produto:
#Código
Descrição
Valor
Exemplos
● DER: Exemplo Cliente
Cliente Pedido
N
Produto
1
1
1
Faz
Detalhe
Pedido
Forma
NN
Compõe
Modelos Físicos
● São modelos de dados
● É uma representação teórica
de como será a implementação
do banco de dados
● Deve levar em conta as
limitações do SGBD Image: FreeDigitalPhotos.net
Modelos Físicos
● Modelo lógico lhe permite a visão de
negócio. O conceito a ser trabalho.
● O modelo físico lhe permite projetar a
implementação do banco de dados.
● O modelo físico pode ser ligeiramente
diferente do modelo lógico (melhorado).
● Requer conhecimento técnico.
Image: FreeDigitalPhotos.net
Modelos Físicos
● Modelo lógico : Entidades e atributos.
● O modelo físico : Tabelas e campo.
● Modelo lógico : Atributo identificador.
● O modelo físico : Chave primária.
● Modelo físico:
○ Chave estrangeira
○ Cardinalidade
○ Tipo de campo
Modelos Físicos
● Tipos de campos
○ Char(N)
○ Varchar(N)
○ Numeric(N,P)
○ Integer
○ Date
○ Time
○ TimeStamp
N = Tamanho
P = Precisão decimal
Modelos Físicos
O SQL
● A linguagem SQL (Structured Query Language – Linguagem
de Consulta Estruturada) é uma linguagem declarativa
utilizada por Sistemas Gerenciadores de Bancos de Dados
Relacionais como: Oracle, SQL Server, MySQL,
PostgreSQL, Firebird, e outros.
● Devido à sua ampla utilização por diversos SGBDs,
surgiram vários dialetos para os comandos, que geraram a
necessidade de criação de um padrão para a linguagem.
Essa tarefa foi realizada pela American National Standards
Institute (ANSI) em 1986 e ISO em 1987. Em 1992, foi
realização uma revisão da linguagem que recebeu o nome
de SQL-92.
O SQL
● Em 1999 e 2003, ocorreram novas revisões. Na revisão de
1999, foram adicionados padrões para expressões
regulares, consultas recursivas, triggers e algumas
características de orientação a objeto. Na revisão de 2003,
foram introduzidas características relacionadas a XML,
sequências padronizadas e colunas com valores de auto-
numeração.
● Uma dificuldade encontrada na utilização da linguagem SQL
por parte dos desenvolvedores ou administradores de
bancos de dados é a diferença entre os comandos nos
diversos SGBDs, mesmo após a definição dos padrões.
Porém, as diferenças não são grandes.
O SQL - Tipos de linguagens
● DDL (Data Definition Language – Linguagem de Definição
de Dados).
○ Os comandos DDL são usados para definir a estrutura
do banco de dados, organizando em tabelas que são
compostas por campos (colunas). Comandos que
compõem a DDL: CREATE, ALTER, DROP.
O SQL - Tipos de linguagens
● DML (Data Manipulation Language – Linguagem de
Manipulação de Dados).
○ Os comandos DML permitem realizar operações de
inserção, alteração, exclusão e seleção sobre os
registros (linhas) das tabelas. Comandos que compõem
a DML: INSERT, UPDATE, DELETE e SELECT.
○ Alguns autores definem que o comando SELECT faz
parte de uma subdivisão chamada DQL (Data Query
Language – Linguagem de Consulta de Dados).
O SQL - Tipos de linguagens
● DCL (Data Control Language – Linguagem de Controle de
Dados). Os comandos DCL são usados para gerenciar
usuários e permissões de acesso ao Sistema Gerenciador
de Banco de Dados. Comandos que compõem a DCL:
GRANT e REVOKE.
● Alguns autores ainda definem uma subdivisão da linguagem
SQL chamada DTL (Data Transaction Languagem –
Linguagem de Transação de Dados). Uma transação pode
ser compreendida como um conjunto de comandos que é
executado de forma atômica, ou seja, ou todos os
comandos são executados com sucesso ou nenhum dos
resultados obtidos poreles será mantido no banco de dados.
O SQL - Comandos DDL
CREATE TABLE <nome_da_tabela> (
<nome_do_campo> <tipo_do_campo> <opções>,
<nome_do_campo> <tipo_do_campo> <opções>,
...
PRIMARY KEY(<nome_do_campo>)
INDEX <nome_do_índice>(<nome_do_campo>),
FOREIGN KEY(<nome_do_campo>)
REFERENCES <nome_da_tabela_origem>(<nome_do_campo_origem>)
ON DELETE <opção_de_referencia>
ON UPDATE <opção_de_referencia>,
);
● <nome_da_tabela>: Nome da tabela a ser criada, não pode haver espaços e acentuações.
● <nome_do_campo>: Nome do campo da tabela, não pode haver espaços e acentuações.
● <tipo_do_campo>: Tipo do campo. Existem tipos padrões, porém existem tipos de campos específicos de cada SGBD.
● <opções>: Padronização do campo (valor padrão, auto incremento, limite numérico, etc...).
● Chave primária: Deve constar o nome do campo (se forma mais de um, separar por vírgula) que compões a chave primária.
Caso a tabela não contenha uma chave primária, basta suprimir essa linha.
● Índices: Deve constar o nome do índice e o nome do campo (se forma mais de um campo, separar por vírgula) que compões
o índice. Caso a tabela não contenha uma chave primária, basta suprimir essa linha. A tabela pode conter quantos índices
forem necessários.
● Chave estrangeira: Deve constar o nome do campo que compões a chave, o nome da tabela de origem e o nome do campo
da tabela de origem . Caso a tabela não contenha uma chave primária, basta suprimir essa linha. A opção de referência
define o comportamento entre os registros da tabela (Se apagar na tabela-pai, apaga na tabela-filho, por exemplo).
O SQL - Comandos DDL
CREATE DATABASE
Este comando é utilizado para criar um banco de dados. Exemplo: CREATE DATABASE loja;
USE
Sempre que for necessário manipular as tabelas de um banco de dados no SGBD MySQL, será necessário selecionar o banco
de dados que se deseja manipular. Para isso, deve ser utilizado o comando USE. Exemplo: USE loja;
CREATE TABLE
Cria uma tabela de dados. Sintaxe: CREATE TABLE <nome_da_tabela> (definição dos campos);
Exemplo:
CREATE TABLE clientes(
cpf integer unsigned not null,
nome varchar(100) not null,
data_nascimento date not null,
sexo char(1) default ‘M’,
salario decimal(10,2) default 0,
profissao varchar(30),
primary key(cpf)
);
Cláusula DEFAULT
A cláusula DEFAULT permite definir um valor padrão para um campo, que será utilizado caso não seja informado nenhum
valor para esse campo na inserção de um registro na tabela. Exemplo: sexo char(1) default ‘M’,
No exemplo acima, caso o campo “sexo” da tabela não seja preenchido com um valor durante a inserção de um registro, será
assumido o valor ‘M’ para o campo. Para campos do tipo NUMÉRICO, o valor DEFAULT é escrito sem aspas.
Exemplo: salario decimal(10,2) default 0,
O SQL - Comandos DDL
CONSTRAINTS (limitações, restrições)
● NOT NULL: define que um campo da tabela é obrigatório (deve receber um valor na inserção de um registro);
● PRIMARY KEY: define que um campo ou conjunto de campos para garantir a identidade de cada registro. Quando um
campo é definido como chave primária, seu valor não pode se repetir em registros diferentes. Cada tabela só pode ter uma
única chave primária.
○ CHAVE PRIMÁRIA SIMPLES: composta por um único campo. Exemplo: se for definido que em um sistema de hotéis
não podem existir dois clientes com o mesmo CPF, portanto este campo deverá ser definido como CHAVE
PRIMÁRIA.
○ CHAVE PRIMÁRIA COMPOSTA: formada por dois ou mais campos. Exemplo: se for definido em um sistema de
Agências bancárias que não podem existir duas contas com o mesmo número da mesma agência, então esses dois
campos formarão uma CHAVE PRIMÁRIA COMPOSTA, pois a combinação deles não pode se repetir.
Criação de uma chave primária composta
CREATE TABLE contas(
numero integer not null,
saldo integer default 0,
agencia_numero integer not null,
primary key(numero,agencia_numero)
);
Ou
CREATE TABLE contas(
numero integer not null,
saldo integer default 0,
agencia_numero integer not null,
constraint pk_conta primary key (numero,
agencia_numero)
);
Sintaxe:
Criação de uma chave primária simples
CREATE TABLE contas(
numero integer not null primary key,
saldo integer default 0,
agencia_numero integer not null
);
Ou
CREATE TABLE contas(
numero integer not null,
saldo integer default 0,
agencia_numero integer not null,
primary key(numero)
);
O SQL - Comandos DDL
CONSTRAINTS
● FOREIGN KEY: Uma chave estrangeira é definida quando se deseja relacionar tabelas do banco de dados.
Sintaxe:
CREATE TABLE contas(
numero integer not null,
saldo integer default 0,
agencia_numero integer not null,
primary key(numero,agencia_numero),
foreign key(agencia_numero) references agencias(numero)
);
Ou
CREATE TABLE contas(
numero integer not null,
saldo integer default 0,
agencia_numero integer not null,
primary key(numero,agencia_numero),
constraint fk_contaagencia foreign key(agencia_numero) references agencias(numero)
);
O SQL - Comandos DDL
CONSTRAINTS
● UNIQUE: Uma constraint UNIQUE definie que o valor de um campo ou de uma sequência de campos não pode se
repetir em registros da mesma tabela. Essa constraint é criada de forma implícita quando é definida uma chave primária
para uma tabela. Como só é possível ter uma chave primária por tabela, a utilização de constraints UNIQUE é uma
solução quando se deseja restringir valores repetidos em outros campos.
Exemplo:
CREATE TABLE clientes(
cpf integer not null,
nome varchar(100) not null,
data_nascimento date not null,
sexo char(1) default ‘M’,
salario decimal(10,2) default 0,
profissao varchar(30),
rg integer not null,
estado char(2) not null,
primary key(cpf),
constraint un_rgestado unique(rg,estado)
);
O SQL - Comandos DDL
DROP TABLE
O comando DROP TABLE é usado para apagar uma tabela do Banco de dados. Sintaxe: DROP TABLE <nome_da_tabela>;
ALTER TABLE
Para não se apagar uma tabela e recriá-la, é possível fazer alterações em sua estrutura por meio do comando ALTER TABLE. Isso
é importante pois a execução do comando DROP TABLE apaga (obviamente) todos os registros da tabela, já a execução do
comando ALTER TABLE não exclui nenhum registro.
Adicionar um campo
Sintaxe: ALTER TABLE <nome_da_tabela> ADD <nome_do_campo> <tipo_de_dado> <atributos>
Exemplo: ALTER TABLE clientes ADD endereco varchar(90) not null;
Alterar o tipo de dado de um campo
Sintaxe: ALTER TABLE <nome_da_tabela> MODIFY <nome_do_campo> <tipo_de_dado>
Exemplo: ALTER TABLE clientes MODIFY endereco varchar(200);
Renomear um campo e modificar o tipo
Sintaxe: ALTER TABLE <nome_da_tabela> CHANGE COLUMN <nome_do_campo novo_nome> <tipo>;
O SQL - Comandos DDL
ALTER TABLE
Exemplo para mudar apenas o nome (o tipo do campo é mantido):
ALTER TABLE clientes CHANGE COLUMN data_nascimento datanasc date;
Exemplo para mudar o nome e o tipo do campo:
ALTER TABLE clientes CHANGE COLUMN data_nascimento datahoranasc datetime;
Renomear uma tabela
Sintaxe: ALTER TABLE <nome_da_tabela> RENAME TO <novo_nome_da_tabela>
Exemplo: ALTER TABLE clientes RENAME TO pessoas_fisicas
Apagar um campo
Sintaxe: ALTER TABLE <nome_da_tabela> DROP COLUMN <nome_do_campo>
Exemplo: ALTER TABLE clientes DROP COLUMN endereco;
O SQL - Comandos DDL
ALTER TABLE
Adicionar uma PRIMARY KEY
Sintaxe:
ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> PRIMARY KEY(campo1[,campo2,campo3,...,
campoN])
Exemplo:
ALTER TABLE clientes ADD CONSTRAINT pk_cpf PRIMARY KEY(cpf)
Apagar uma PRIMARY KEY
Sintaxe:
ALTER TABLE <nome_da_tabela> DROP PRIMARY KEY
Ou
ALTER TABLE <nome_da_tabela> DROP CONSTRAINT <nome_da_constraint_da_primary_key>
Exemplo:
ALTER TABLE clientes DROP PRIMARY KEY;
Ou
ALTER TABLE clientes DROP CONSTRAINT pk_cpf;
O SQL - Comandos DDL
ALTER TABLE
Adicionar uma FOREIGN KEY
Sintaxe: ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> FOREIGN KEY(campo1[,campo2,
campo3,...,campoN]) REFERENCES <nome_da_tabela>(campo1[,campo2,campo3,...,campoN]);
Exemplo:
ALTER TABLE contas ADD CONSTRAINT fk_contaagencia FOREIGN KEY(agencia_numero) REFERENCES agencias
(numero);
Adicionar uma constraint UNIQUE
Sintaxe: ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> UNIQUE(campo1[,campo2,campo3,...,
campoN])
Exemplo:
ALTER TABLE clientes ADD CONSTRAINT un_rgestado UNIQUE(rg,estado)
Apagar uma CONSTRAINT qualquer
Sintaxe: ALTER TABLE <nome_da_tabela> DROP CONSTRAINT <nome_da_constraint>
Exemplo:
ALTER TABLE contas DROP CONSTRAINT fk_contaagencia
Comando SHOW TABLES
Para visualizar todas as tabelas em um banco de dados, utilize o comando SHOW TABLES. Exemplo: SHOW TABLES;
Comando DESC
Para visualizar a estrutura de uma tabela, utilize o comando DESC (ou DESCRIBE).
Exemplo: DESC clientes;
O SQL - Exemplo prático
O SQL - Exemplo prático
O SQL - Exemplo prático
CREATE TABLE LIVRO (
idLIVRO INTEGER UNSIGNED NOT NULL
AUTO_INCREMENT,
EXEMPLAR VARCHAR(20) NULL,
ISBN NUMERIC(20) NULL,
TITULO VARCHAR(200) NULL,
AUTORES VARCHAR(500) NULL,
PRIMARY KEY(idLIVRO)
);
CREATE TABLE INSCRICAO (
idINSCRICAO INTEGER UNSIGNED NOT NULL
AUTO_INCREMENT,
NOME VARCHAR(100) NULL,
ENDERECO VARCHAR(500) NULL,
TELEFONE VARCHAR(15) NULL,
DATA_INSCRICAO DATE NULL,
PRIMARY KEY(idINSCRICAO)
);
CREATE TABLE RESERVA (
idRESERVA INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
LIVRO_idLIVRO INTEGER UNSIGNED NOT NULL,
INSCRICAO_idINSCRICAO INTEGER UNSIGNED NOT NULL,
DATA_RESERVA DATE NULL,
PRIMARY KEY(idRESERVA),
INDEX RESERVA_FKIndex1(INSCRICAO_idINSCRICAO),
INDEX RESERVA_FKIndex2(LIVRO_idLIVRO),
FOREIGN KEY(INSCRICAO_idINSCRICAO)
REFERENCES INSCRICAO(idINSCRICAO)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(LIVRO_idLIVRO)
REFERENCES LIVRO(idLIVRO)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
CREATE TABLE REQUISICAO (
idREQUISICAO INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
INSCRICAO_idINSCRICAO INTEGER UNSIGNED NOT NULL,
LIVRO_idLIVRO INTEGER UNSIGNED NOT NULL,
DATA_REQUISICAO DATE NULL,
DATA_ENTREGA DATE NULL,
PRIMARY KEY(idREQUISICAO),
INDEX REQUISICAO_FKIndex1(INSCRICAO_idINSCRICAO),
INDEX REQUISICAO_FKIndex2(LIVRO_idLIVRO),
FOREIGN KEY(INSCRICAO_idINSCRICAO)
REFERENCES INSCRICAO(idINSCRICAO)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(LIVRO_idLIVRO)
REFERENCES LIVRO(idLIVRO)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
O SQL - Manipulando os dados
● A subdivisão da linguagem SQL denominada DML (Data
Manipulation Language) é composta pelos seguintes
comandos:
○ INSERT: Inclui registro na tabela.
○ UPDATE: Atualiza registros já existentes na tabela.
○ DELETE: Exclui registros da tabela.
○ SELECT: Recupera registros armazenados na tabela (uma
ou mais, simultâneamente).
O SQL - Exemplo prático
● INSERT
Sintaxe:
INSERT INTO <nome_da_tabela> (<campo1,campo2,
campo3,...,campoN>) VALUES (<valor1, valor2,
valor3, ..., valorN>);
● Exemplo:
INSERT INTO livro (EXEMPLAR, ISBN, TITULO, AUTORES) VALUES ('1',
98012345678, ’Meu Livro’, 'José da Silva');
● Observações:
1) Valores do tipo TEXTO devem ser envolvidos por aspas simples ( ‘ );
2) Valores do tipo numéricos (INTEGER, NUMERIC, DECIMAL, etc..) não são
envolvidos por aspas simples e devem utilizar o ponto decimal para separação das
casas decimais no lugar na vírgula. Ex.: 3.25
O SQL - Exemplo prático
● Outra sintaxe do comando INSERT permite ocultar os
campos e escrever somente os valores que serão inseridos.
Exemplo:
INSERT INTO livro VALUES ('1', 98012345678, ’Meu Livro’, 'José
da Silva');
● É possível usar o INSERT para múltiplos registros. Exemplo:
INSERT INTO livro_backup SELECT * FROM livro;
● Observações: Para a execução do comando acima é necessário que os tipos de
dados dos campos da tabela cidades_backup estejam na mesma ordem dos tipos
de dados dos campos da tabela cidades.
O SQL - Exemplo prático
● UPDATE
Sintaxe:
UPDATE <nome_da_tabela> SET <campo1 = valor1>,
<campo2 = valor2>, <campo3 = valor3>, ...,
<campoN = valorN> [ WHERE condições]
● Exemplo:
UPDATE livro SET titulo = ‘O Alienista’;
● O comando UPDATE acima altera o campo titulo de todas os livros para ‘O
Alienista’.
O SQL - Exemplo prático
● Para restringir a alteração dos registros a um subconjunto
deles, é utilizada a cláusula WHERE, que permite processar
uma ou mais condições.
● Exemplo:
UPDATE livro SET
titulo = ‘O Alienista’,
Autor = ‘Machado de Assis’
WHERE isbn = 98012345678;
O SQL - Exemplo prático
● DELETE
Sintaxe:
DELETE FROM <nome_da_tabela> [WHERE condições];
● Exemplo:
DELETE FROM livro;
● O comando acima exclui todos os registros da tabela livro.
Para excluir apenas um subconjunto dos registros, é
necessário utilizar a cláusula WHERE. Exemplo:
DELETE FROM livro WHERE isbn = 98012345678;
O SQL - Exemplo prático
● SELECT
Sintaxe:
SELECT <campo1>, <campo2>, ..., <campoN> FROM <tabela1>,
<tabela2>, ..., <tabelaN> [ JOIN <tabela> ON condições]
[ WHERE condições ] [ORDER BY <campos>];
● Exemplos:
Exibir todos os campos de uma tabela
SELECT * FROM livro;
Exibir um campo de uma tabela
SELECT titulo FROM livro;
Exibir mais de um campo de uma tabela
SELECT titulo, autor FROM livro;
O SQL - Exemplo prático
● SELECT
Apelidando campos
SELECT titulo as nome_livro, isbn as isbn_livro FROM livro;
Apelidando tabelas
SELECT titulo, isbn FROM livro as acervo;
Selecionando campos a partir do nome da tabela
SELECT livro.titulo, livro.isbn FROM livro;
Selecionando campos a partir do apelido da tabela
SELECT acervo.titulo, acervo.isbn FROM livro as acervo;
O SQL - Exemplo prático
● Cláusula WHERE
● Igual: =
UPDATE livro SET autor = ‘Machado de Assis’ WHERE isbn = 98012345678;
● Diferente: <>
UPDATE INSCRICAO SET endereco = ‘Rua dos Bobos 0’ WHERE idINSCRICAO <> 1;
● Maior: >
SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO > '2006/07/26';
● Menor: <
SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO < '2006/07/26';
● Maior ou igual: >=
SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO >= '2006/07/26';
● Menor ou igual: <=
SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO <= '2006/07/26';
● IN: Comparação de igualdade com múltiplos valores
SELECT * FROM INSCRICAO WHERE nome IN ('José','Maria','Silveira');
O SQL - Exemplo prático
● Cláusula WHERE
● LIKE: Comparação de partes do texto
SELECT * FROM INSCRICAO WHERE nome LIKE ‘a%’;
Seleciona todos o inscritos cujos nomes iniciam pela letra “a”.
SELECT * FROM INSCRICAO WHERE nome LIKE ‘%o’;
Seleciona todos os inscritos cujos nomes terminam pela letra “o”.
SELECT * FROM INSCRICAO WHERE nome LIKE ‘%a%’;
Seleciona todos os inscritos cujos nomes possuem a letra “a” em qualquer posição (início, meio ou fim).
O SQL - Exemplo prático
● Cláusula WHERE
● Soma: +
UPDATE funcionarios SET salario = salario + 10;
Acrescenta R$ 10,00 ao salário dos funcionários.
● Subtração: -
UPDATE funcionarios SET salario = salario – 5 WHERE salario > 1000;
Subtrai R$ 5,00 do salário dos funcionários que ganham mais de R$ 1000,00.
● Multiplicação: *
UPDATE funcionarios SET salario = salario*1.1;
Aumenta o salário dos funcionários em 10%.
● Divisão: /
UPDATE funcionarios SET salario = salario + salario*(10/100);
Aumenta o salário dos funcionários em 10%.
● IS: Operador especial para comparação de igualdade. Este operador é usado para
comparação com o valor NULL.
SELECT nome FROM funcionarios WHERE celular IS NULL.
O SQL - Exemplo prático
● Cláusula WHERE
● AND
SELECT * FROM INSCRICAO WHERE nome LIKE ‘a%’ AND
DATA_INSCRICAO <= ‘1980/01/01’;
Seleciona todos os inscritos cujos nomes iniciam pela letra “a” e cujas datas de inscrição são anteriores a 01/01/1980.
● OR
SELECT * FROM livro WHERE isbn='987123' OR isbn ='987456';
Seleciona os livros cujos os ISBN sejam 987123 ou 987456.
● Multiplicação: *
UPDATE funcionarios SET salario = salario*1.1;
Aumenta o salário dos funcionários em 10%.
● NOT
SELECT nome FROM funcionarios WHERE NOT(salario < 1000);
Seleciona o nome dos funcionários que não possuem salário menor que 1000.
O SQL - Exemplo prático
● Junção de tabelas
● Usando a cláusula WHERE
SELECT * FROM REQUISICAO , LIVRO
WHERE REQUISICAO.LIVRO_idLIVRO = LIVRO.idLIVRO;
Para a junção de tabelas, sempre devem ser escritas as condições entre os campos que estão
relacionados nas tabelas. Geralmente, essas condições envolvem os campos que são chaves
estrangeiras de uma tabela e os que são chaves primárias da outra, porém nada impede de serem feitas
condições entre campos que não são chaves.
● Usando a cláusula JOIN
SELECT * FROM LIVRO INNER JOIN requisicao ON REQUISICAO.
LIVRO_idLIVRO = LIVRO.idLIVRO;
A cláusula INNER JOIN define que serão selecionados somente os registros de uma tabela que possuem
relação com os registros da outra tabela.
O SQL - Exemplo prático
● Junção de tabelas
● Usando a cláusula LEFT JOIN
SELECT requisicao.data_requisicao, inscricao.nome
FROM inscricao
LEFT JOIN requisicao ON requisicao.INSCRICAO_idINSCRICAO = inscricao.
idINSCRICAO;
Para interpretar o LEFT JOIN, faz-se a pergunta: qual tabela está à esquerda do JOIN? No comando acima, a tabela que
está à esquerda da cláusula JOIN é a tabela inscricao. Portanto, serão selecionados todos os registros da tabela inscricao
estando ou não relacionados com a tabela requisicao pelo camp o de chave primária.
● Usando a cláusula RIGHT JOIN
SELECT requisicao.data_requisicao, inscricao.nome
FROM inscricao
RIGHT JOIN requisicao ON requisicao.INSCRICAO_idINSCRICAO = inscricao.
idINSCRICAO;
Para interpretar o RIGHT JOIN, faz-se a pergunta: qual tabela está à direita do JOIN? A tabela requisicao. Portanto, serão
selecionados todos os registros da tabela requisicao que estão ou não relacionados com os registros da tabela inscricao.
O SQL - Exemplo prático
● Cláusula ORDER BY
Sintaxe:
SELECT ... ORDER BY <campo1>, <campo2>, <campoN> ... [desc|asc]
● Exemplos:
Seleciona os livros cujos títulos iniciam pela letra “a” e ordena a lista primeiramente pelo autor e, em seguida, pelos títulos dos livros.
SELECT * FROM livro WHERE titulo LIKE ‘a%’ ORDER BY autor,
titulo;
Seleciona todos os livros ordenando decrescentemente pelo título e, se houver repetição de valores, obedece à ordem crescente do autor.
SELECT * FROM livro ORDER BY titulo DESC, autor;
Seleciona todos os livros ordenando crescentemente pelo título e, se houver repetição de valores, obedece à ordem decrescente do nome do autor.
SELECT * FROM livro ORDER BY titulo, autor DESC;
Concluindo
● É importante possuir uma documentação mínima sobre o
banco de dados para poder se localizar e fazer a
manutenção do mesmo.
● Conhecer pelo menos um tipo de modelo de banco de
dados facilita a interatividade entre ferramentas e a
comunicação com os profissionais envolvidos com o
sistema.
● Decorar comandos não é o importante. O importante é
saber o funcionamento!

Mais conteúdo relacionado

Mais procurados

Aula 2 - Comandos DDL DML DQL E DCL
Aula 2 - Comandos DDL DML DQL E DCLAula 2 - Comandos DDL DML DQL E DCL
Aula 2 - Comandos DDL DML DQL E DCL
César Augusto Pessôa
 
Comandos DDL para o MySQL
Comandos DDL para o MySQLComandos DDL para o MySQL
Comandos DDL para o MySQL
Arley Rodrigues
 
Aula1 - Apresentação de Banco de Dados
Aula1 - Apresentação de Banco de DadosAula1 - Apresentação de Banco de Dados
Aula1 - Apresentação de Banco de Dados
Rafael Albani
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Leinylson Fontinele
 
Triggers no SQL Server
Triggers no SQL ServerTriggers no SQL Server
Triggers no SQL Server
Claudio Stein Junior
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Leinylson Fontinele
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
Thiago Freitas
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dados
Edgar Stuart
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
Gleydson Sousa
 
Sql com sql server básico - Bóson treinamentos
Sql com sql server básico - Bóson treinamentosSql com sql server básico - Bóson treinamentos
Sql com sql server básico - Bóson treinamentos
Fábio dos Reis
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
Daniel Paz de Araújo
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Leinylson Fontinele
 
Utilizando views, stored procedures e triggers
Utilizando views, stored procedures e triggersUtilizando views, stored procedures e triggers
Utilizando views, stored procedures e triggers
Daniel Maia
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13
diogoa21
 
Psi m14
Psi m14Psi m14
Psi m14
Luis Ferreira
 
Estrutura de Dados - Registros
Estrutura de Dados - RegistrosEstrutura de Dados - Registros
Estrutura de Dados - Registros
Adriano Teixeira de Souza
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
Roberto Grande
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
vini_campos
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dados
diogocbj
 
Aula 11 banco de dados
Aula 11   banco de dadosAula 11   banco de dados
Aula 11 banco de dados
Jorge Ávila Miranda
 

Mais procurados (20)

Aula 2 - Comandos DDL DML DQL E DCL
Aula 2 - Comandos DDL DML DQL E DCLAula 2 - Comandos DDL DML DQL E DCL
Aula 2 - Comandos DDL DML DQL E DCL
 
Comandos DDL para o MySQL
Comandos DDL para o MySQLComandos DDL para o MySQL
Comandos DDL para o MySQL
 
Aula1 - Apresentação de Banco de Dados
Aula1 - Apresentação de Banco de DadosAula1 - Apresentação de Banco de Dados
Aula1 - Apresentação de Banco de Dados
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Triggers no SQL Server
Triggers no SQL ServerTriggers no SQL Server
Triggers no SQL Server
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dados
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Sql com sql server básico - Bóson treinamentos
Sql com sql server básico - Bóson treinamentosSql com sql server básico - Bóson treinamentos
Sql com sql server básico - Bóson treinamentos
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Utilizando views, stored procedures e triggers
Utilizando views, stored procedures e triggersUtilizando views, stored procedures e triggers
Utilizando views, stored procedures e triggers
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13
 
Psi m14
Psi m14Psi m14
Psi m14
 
Estrutura de Dados - Registros
Estrutura de Dados - RegistrosEstrutura de Dados - Registros
Estrutura de Dados - Registros
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dados
 
Aula 11 banco de dados
Aula 11   banco de dadosAula 11   banco de dados
Aula 11 banco de dados
 

Destaque

Apostila introdução à linguagem sql
Apostila introdução à linguagem sqlApostila introdução à linguagem sql
Apostila introdução à linguagem sql
Reuel Lopes
 
Capítulo 04 - Persistência de dados com SQLite
Capítulo 04 - Persistência de dados com SQLiteCapítulo 04 - Persistência de dados com SQLite
Capítulo 04 - Persistência de dados com SQLite
Marcio Palheta
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012
Hcode
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012
Rodrigo Ribeiro
 
Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008
Leonardo Lourenço Silva
 
TOTVS LINHA RM TREINAMENTO SQL
TOTVS LINHA RM TREINAMENTO SQLTOTVS LINHA RM TREINAMENTO SQL
TOTVS LINHA RM TREINAMENTO SQL
Fábio Delboni
 
Capítulo 02 - Cadastro de Alunos e Decisões de Projeto
Capítulo 02 - Cadastro de Alunos e Decisões de ProjetoCapítulo 02 - Cadastro de Alunos e Decisões de Projeto
Capítulo 02 - Cadastro de Alunos e Decisões de Projeto
Marcio Palheta
 
Geomatique
GeomatiqueGeomatique
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
altima°
 
Venice, The City On Water (Please see full screen)
Venice, The City On Water (Please see full screen)Venice, The City On Water (Please see full screen)
Venice, The City On Water (Please see full screen)
Jia Liu
 
Parts Of A Story
Parts Of A StoryParts Of A Story
Parts Of A Story
SAMIG1445
 
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
Softeam agency
 
Fluid control and Soft tissue management in Prosthodontics
Fluid control and Soft tissue management in ProsthodonticsFluid control and Soft tissue management in Prosthodontics
Fluid control and Soft tissue management in Prosthodontics
Vinay Kadavakolanu
 
Completing the Innovation Management Puzzle
Completing the Innovation Management PuzzleCompleting the Innovation Management Puzzle
Completing the Innovation Management Puzzle
Julian Keith Loren
 
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
Neha Kumar
 
Native American Cultures 1491-1607
Native American Cultures 1491-1607Native American Cultures 1491-1607
Native American Cultures 1491-1607
Tom Richey
 
Fundamentals of FPGA
Fundamentals of FPGAFundamentals of FPGA
Fundamentals of FPGA
velamakuri
 
Characteristics of gifted students
Characteristics of gifted studentsCharacteristics of gifted students
Characteristics of gifted students
Trinette Atri
 
Walktwomoons
WalktwomoonsWalktwomoons
Walktwomoons
N8 G
 
Basics of radiation and production of x rays
Basics of radiation and production of x raysBasics of radiation and production of x rays
Basics of radiation and production of x rays
dbc9427
 

Destaque (20)

Apostila introdução à linguagem sql
Apostila introdução à linguagem sqlApostila introdução à linguagem sql
Apostila introdução à linguagem sql
 
Capítulo 04 - Persistência de dados com SQLite
Capítulo 04 - Persistência de dados com SQLiteCapítulo 04 - Persistência de dados com SQLite
Capítulo 04 - Persistência de dados com SQLite
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012
 
Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008
 
TOTVS LINHA RM TREINAMENTO SQL
TOTVS LINHA RM TREINAMENTO SQLTOTVS LINHA RM TREINAMENTO SQL
TOTVS LINHA RM TREINAMENTO SQL
 
Capítulo 02 - Cadastro de Alunos e Decisões de Projeto
Capítulo 02 - Cadastro de Alunos e Decisões de ProjetoCapítulo 02 - Cadastro de Alunos e Decisões de Projeto
Capítulo 02 - Cadastro de Alunos e Decisões de Projeto
 
Geomatique
GeomatiqueGeomatique
Geomatique
 
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
Et si le renouveau des magasins passait par les tablettes vendeurs ? (confére...
 
Venice, The City On Water (Please see full screen)
Venice, The City On Water (Please see full screen)Venice, The City On Water (Please see full screen)
Venice, The City On Water (Please see full screen)
 
Parts Of A Story
Parts Of A StoryParts Of A Story
Parts Of A Story
 
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
Search Engine Marketing (SEO, SEA, SSO, LSO, MSO)
 
Fluid control and Soft tissue management in Prosthodontics
Fluid control and Soft tissue management in ProsthodonticsFluid control and Soft tissue management in Prosthodontics
Fluid control and Soft tissue management in Prosthodontics
 
Completing the Innovation Management Puzzle
Completing the Innovation Management PuzzleCompleting the Innovation Management Puzzle
Completing the Innovation Management Puzzle
 
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
MOBILE PHONE & MOBILE TOWER RADIATION HAZARDS
 
Native American Cultures 1491-1607
Native American Cultures 1491-1607Native American Cultures 1491-1607
Native American Cultures 1491-1607
 
Fundamentals of FPGA
Fundamentals of FPGAFundamentals of FPGA
Fundamentals of FPGA
 
Characteristics of gifted students
Characteristics of gifted studentsCharacteristics of gifted students
Characteristics of gifted students
 
Walktwomoons
WalktwomoonsWalktwomoons
Walktwomoons
 
Basics of radiation and production of x rays
Basics of radiation and production of x raysBasics of radiation and production of x rays
Basics of radiation and production of x rays
 

Semelhante a Sql básico - Teoria e prática: Um grande resumo

Aula 10 banco de dados
Aula 10   banco de dadosAula 10   banco de dados
Aula 10 banco de dados
Jorge Ávila Miranda
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
Ed W. Jr
 
6338 111121071604-phpapp01
6338 111121071604-phpapp016338 111121071604-phpapp01
6338 111121071604-phpapp01
Gilson Figueredo
 
Banco de dados comandos sql
Banco de dados   comandos sqlBanco de dados   comandos sql
Banco de dados comandos sql
Nilson Augustini
 
Agbd aula4 sql_ddl
Agbd aula4 sql_ddlAgbd aula4 sql_ddl
Agbd aula4 sql_ddl
Daniel Fernandes Costa
 
Apostila de sql
Apostila de sqlApostila de sql
Apostila de sql
Gabriel Rodrigues
 
Minicurso PostgreSQl
Minicurso PostgreSQlMinicurso PostgreSQl
Minicurso PostgreSQl
Cezar Souza
 
Aula 10 banco de dados
Aula 10   banco de dadosAula 10   banco de dados
Aula 10 banco de dados
Jorge Ávila Miranda
 
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptxintroduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
SaraR49
 
Bdm aula 9 - operações sql - ticianne darin
Bdm   aula 9 - operações sql - ticianne darinBdm   aula 9 - operações sql - ticianne darin
Bdm aula 9 - operações sql - ticianne darin
Ticianne Darin
 
SQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfSQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdf
AndersonW5
 
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
QuitriaSilva550
 
Sql
SqlSql
Sql01
Sql01Sql01
Sql01
Tecksantos
 
Bd ii material
Bd ii   materialBd ii   material
Bd ii material
Patricia Freitas
 
Melhorando o desempenho de suas consultas no MySql
Melhorando o desempenho de suas consultas no MySqlMelhorando o desempenho de suas consultas no MySql
Melhorando o desempenho de suas consultas no MySql
Helder Lopes
 
Fundamentos de SQL - Parte 6 de 8
Fundamentos de SQL - Parte 6 de 8Fundamentos de SQL - Parte 6 de 8
Fundamentos de SQL - Parte 6 de 8
Emiliano Barbosa
 
07 sql - parte 01
07   sql - parte 0107   sql - parte 01
07 sql - parte 01
SharllesGuedes
 
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docxmodulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
AnaAlmeida462833
 
SQL.ppt
SQL.pptSQL.ppt
SQL.ppt
JoberthSilva
 

Semelhante a Sql básico - Teoria e prática: Um grande resumo (20)

Aula 10 banco de dados
Aula 10   banco de dadosAula 10   banco de dados
Aula 10 banco de dados
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
 
6338 111121071604-phpapp01
6338 111121071604-phpapp016338 111121071604-phpapp01
6338 111121071604-phpapp01
 
Banco de dados comandos sql
Banco de dados   comandos sqlBanco de dados   comandos sql
Banco de dados comandos sql
 
Agbd aula4 sql_ddl
Agbd aula4 sql_ddlAgbd aula4 sql_ddl
Agbd aula4 sql_ddl
 
Apostila de sql
Apostila de sqlApostila de sql
Apostila de sql
 
Minicurso PostgreSQl
Minicurso PostgreSQlMinicurso PostgreSQl
Minicurso PostgreSQl
 
Aula 10 banco de dados
Aula 10   banco de dadosAula 10   banco de dados
Aula 10 banco de dados
 
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptxintroduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
introduao-a-sql-prof-anderson-cavalcanti-ufrn-ct-dca.pptx
 
Bdm aula 9 - operações sql - ticianne darin
Bdm   aula 9 - operações sql - ticianne darinBdm   aula 9 - operações sql - ticianne darin
Bdm aula 9 - operações sql - ticianne darin
 
SQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfSQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdf
 
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
 
Sql
SqlSql
Sql
 
Sql01
Sql01Sql01
Sql01
 
Bd ii material
Bd ii   materialBd ii   material
Bd ii material
 
Melhorando o desempenho de suas consultas no MySql
Melhorando o desempenho de suas consultas no MySqlMelhorando o desempenho de suas consultas no MySql
Melhorando o desempenho de suas consultas no MySql
 
Fundamentos de SQL - Parte 6 de 8
Fundamentos de SQL - Parte 6 de 8Fundamentos de SQL - Parte 6 de 8
Fundamentos de SQL - Parte 6 de 8
 
07 sql - parte 01
07   sql - parte 0107   sql - parte 01
07 sql - parte 01
 
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docxmodulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
modulo-15-sql-criar-e-manipular-tabelas1-2-flipbook-pdf.docx
 
SQL.ppt
SQL.pptSQL.ppt
SQL.ppt
 

Mais de Helder Lopes

Resumo: Oportunidade de Negocio Herbalife
Resumo: Oportunidade de Negocio HerbalifeResumo: Oportunidade de Negocio Herbalife
Resumo: Oportunidade de Negocio Herbalife
Helder Lopes
 
Desenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geralDesenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geral
Helder Lopes
 
Programação orientada a objetos em delphi
Programação orientada a objetos em delphiProgramação orientada a objetos em delphi
Programação orientada a objetos em delphi
Helder Lopes
 
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacionalGerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
Helder Lopes
 
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Helder Lopes
 
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos IniciaisFundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Helder Lopes
 
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
Helder Lopes
 
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
Helder Lopes
 
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
Helder Lopes
 
Estatística - Aula 2 - Estatística descritiva
Estatística - Aula 2 - Estatística descritivaEstatística - Aula 2 - Estatística descritiva
Estatística - Aula 2 - Estatística descritiva
Helder Lopes
 
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplinaFundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Helder Lopes
 
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLMGerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
Helder Lopes
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de Informação
Helder Lopes
 
Ferramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de RedeFerramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de Rede
Helder Lopes
 
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplinaGerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
Helder Lopes
 
Gerenciamento e administração de Redes
Gerenciamento e administração de RedesGerenciamento e administração de Redes
Gerenciamento e administração de Redes
Helder Lopes
 
Redes de computadores e Telecomunicações
Redes de computadores e TelecomunicaçõesRedes de computadores e Telecomunicações
Redes de computadores e Telecomunicações
Helder Lopes
 
Administração de Banco de Dados
Administração de Banco de DadosAdministração de Banco de Dados
Administração de Banco de Dados
Helder Lopes
 
Sistemas para Internet e Software Livre
Sistemas para Internet e Software LivreSistemas para Internet e Software Livre
Sistemas para Internet e Software Livre
Helder Lopes
 

Mais de Helder Lopes (19)

Resumo: Oportunidade de Negocio Herbalife
Resumo: Oportunidade de Negocio HerbalifeResumo: Oportunidade de Negocio Herbalife
Resumo: Oportunidade de Negocio Herbalife
 
Desenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geralDesenvolvimento web com vs2012: Uma visão geral
Desenvolvimento web com vs2012: Uma visão geral
 
Programação orientada a objetos em delphi
Programação orientada a objetos em delphiProgramação orientada a objetos em delphi
Programação orientada a objetos em delphi
 
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacionalGerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
Gerenciamento de Infra-Estrutura - Aula 5 - contexto organizacional
 
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
 
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos IniciaisFundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
 
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
Gerenciamento de Infra-Estrutura - Aula 2 - Definições Utilizadas em Gerencia...
 
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
Gerenciamento de Infra-Estrutura - Aula 3 - Ferramentas de Gerenciamento - Co...
 
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
Aplicação de Redes Neurais Artificiais Paraconsistentes no auxílio do diagnós...
 
Estatística - Aula 2 - Estatística descritiva
Estatística - Aula 2 - Estatística descritivaEstatística - Aula 2 - Estatística descritiva
Estatística - Aula 2 - Estatística descritiva
 
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplinaFundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
 
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLMGerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
Gerenciamento de Infra-Estrutura - Aula 3 - Conceitos sobre SLA & SLM
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de Informação
 
Ferramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de RedeFerramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de Rede
 
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplinaGerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
Gerenciamento de Infra-Estrutura - Aula 1 - Introdução à disciplina
 
Gerenciamento e administração de Redes
Gerenciamento e administração de RedesGerenciamento e administração de Redes
Gerenciamento e administração de Redes
 
Redes de computadores e Telecomunicações
Redes de computadores e TelecomunicaçõesRedes de computadores e Telecomunicações
Redes de computadores e Telecomunicações
 
Administração de Banco de Dados
Administração de Banco de DadosAdministração de Banco de Dados
Administração de Banco de Dados
 
Sistemas para Internet e Software Livre
Sistemas para Internet e Software LivreSistemas para Internet e Software Livre
Sistemas para Internet e Software Livre
 

Último

Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
Falcão Brasil
 
P0107 do aluno da educação municipal.pdf
P0107 do aluno da educação municipal.pdfP0107 do aluno da educação municipal.pdf
P0107 do aluno da educação municipal.pdf
Ceiça Martins Vital
 
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdfPortfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Falcão Brasil
 
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdfA Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
Falcão Brasil
 
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdfA Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
Falcão Brasil
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
LuizHenriquedeAlmeid6
 
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
Sandra Pratas
 
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdfLivro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
CarolineSaback2
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
Sandra Pratas
 
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
Sandra Pratas
 
Introdução ao filme Divertida Mente 2 em pdf
Introdução ao filme Divertida Mente 2 em pdfIntrodução ao filme Divertida Mente 2 em pdf
Introdução ao filme Divertida Mente 2 em pdf
valdeci17
 
Escola de Especialistas de Aeronáutica (EEAR).pdf
Escola de Especialistas de Aeronáutica (EEAR).pdfEscola de Especialistas de Aeronáutica (EEAR).pdf
Escola de Especialistas de Aeronáutica (EEAR).pdf
Falcão Brasil
 
Desafio matemático - multiplicação e divisão.
Desafio matemático -  multiplicação e divisão.Desafio matemático -  multiplicação e divisão.
Desafio matemático - multiplicação e divisão.
Mary Alvarenga
 
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptxVOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
mailabueno45
 
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
Sandra Pratas
 
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdfEscola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
Falcão Brasil
 
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdfPortfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Falcão Brasil
 
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
Falcão Brasil
 
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptxSlides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
LuizHenriquedeAlmeid6
 
Caça-palavras - multiplicação
Caça-palavras  -  multiplicaçãoCaça-palavras  -  multiplicação
Caça-palavras - multiplicação
Mary Alvarenga
 

Último (20)

Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
Apresentação Institucional do Centro Gestor e Operacional do Sistema de Prote...
 
P0107 do aluno da educação municipal.pdf
P0107 do aluno da educação municipal.pdfP0107 do aluno da educação municipal.pdf
P0107 do aluno da educação municipal.pdf
 
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdfPortfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
 
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdfA Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
A Industria Brasileira de Defesa - Situação Atual e Perspectivas de Evolução.pdf
 
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdfA Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
A Atuação das Forças Armadas na Garantia da Lei e da Ordem (GLO).pdf
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
 
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
EBOOK_HORA DO CONTO_MARINELA NEVES & PAULA FRANCISCO_22_23
 
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdfLivro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
Livro - Planejamento em Orientação Educacional - Heloísa Lück.pdf
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
 
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_CARLA MORAIS_22_23
 
Introdução ao filme Divertida Mente 2 em pdf
Introdução ao filme Divertida Mente 2 em pdfIntrodução ao filme Divertida Mente 2 em pdf
Introdução ao filme Divertida Mente 2 em pdf
 
Escola de Especialistas de Aeronáutica (EEAR).pdf
Escola de Especialistas de Aeronáutica (EEAR).pdfEscola de Especialistas de Aeronáutica (EEAR).pdf
Escola de Especialistas de Aeronáutica (EEAR).pdf
 
Desafio matemático - multiplicação e divisão.
Desafio matemático -  multiplicação e divisão.Desafio matemático -  multiplicação e divisão.
Desafio matemático - multiplicação e divisão.
 
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptxVOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
VOCÊ CONHECE AS HISTÓRIAS DA BIBLÍA - EMOJIES.pptx
 
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
EBOOK_HORA DO CONTO_O SONHO DO EVARISTO_RITA E CLÁUDIA_22_23
 
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdfEscola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
Escola de Comando e Estado-Maior da Aeronáutica (ECEMAR).pdf
 
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdfPortfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdf
 
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
Manual de Identidade Visual do Centro Gestor e Operacional do Sistema de Prot...
 
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptxSlides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
 
Caça-palavras - multiplicação
Caça-palavras  -  multiplicaçãoCaça-palavras  -  multiplicação
Caça-palavras - multiplicação
 

Sql básico - Teoria e prática: Um grande resumo

  • 1. SQL Básico: Teoria e Prática Um grande resumo...
  • 2. Um pouco de história
  • 4. Características básicas ● Exemplo de tabela ● Um banco de dados é um conjunto de tabelas. ● Representa aspectos da vida real. Nome RA Nota Bonifácio Cubas 125159 9,5 Ana Cintra 125148 8,0
  • 5. Modelos lógicos ● São modelos de dados ● É uma representação teórica de como será a implementação do banco de dados ● Deve ser independente de tecnologia Image: FreeDigitalPhotos.net
  • 6. Modelos lógicos ● Informações concisas e necessárias para o negócio ● Identifica redundâncias ● Identifica dados não utilizados ● Permite estabelecer regras de integridade de dados Image: FreeDigitalPhotos.net
  • 7. Modelos lógicos Image: FreeDigitalPhotos.net Aluno Matrícula Nome Endereço Data Nascimento ● Um modelo é formado por: ○ Entidades ○ Atributos Atributo identificador (Chave Primária)
  • 9. Relacionamentos ● Diagramas de entidas ○ Utilizaremos a metodologia DER: Diagrama Entidade-Relacionamento ○ DER representa a associação de cada entidade através de relacionamentos Entidade 1 Entidade 2Relacionamento
  • 10. Relacionamentos ● DER Entidade 1 Entidade 2Um ou muitos Entidade 3 Um e somente um Um ou muitos Um ou nenhum Exemplo de relacionamento
  • 11. Exemplos ● Exemplo: Cliente ○ Uma empresa controla os seguintes dados de seus clientes: ■ Código ■ Nome ■ Endereço ■ Telefone Cliente: #Código Nome Endereço Telefone
  • 12. Exemplos ● Exemplo: Cliente ○ A empresa vende diversos produtos a seus clientes: ■ Cada cliente pode comprar quantos produtos precisar ■ Cada pedido de venda pode ser composto por vários produtos Pedido: #Código Cliente Data Valor Detalhe Pedido: #Código Pedido #Código Produto Quantidade Valor Produto: #Código Descrição Valor
  • 13. Exemplos ● DER: Exemplo Cliente Cliente Pedido N Produto 1 1 1 Faz Detalhe Pedido Forma NN Compõe
  • 14. Modelos Físicos ● São modelos de dados ● É uma representação teórica de como será a implementação do banco de dados ● Deve levar em conta as limitações do SGBD Image: FreeDigitalPhotos.net
  • 15. Modelos Físicos ● Modelo lógico lhe permite a visão de negócio. O conceito a ser trabalho. ● O modelo físico lhe permite projetar a implementação do banco de dados. ● O modelo físico pode ser ligeiramente diferente do modelo lógico (melhorado). ● Requer conhecimento técnico. Image: FreeDigitalPhotos.net
  • 16. Modelos Físicos ● Modelo lógico : Entidades e atributos. ● O modelo físico : Tabelas e campo. ● Modelo lógico : Atributo identificador. ● O modelo físico : Chave primária. ● Modelo físico: ○ Chave estrangeira ○ Cardinalidade ○ Tipo de campo
  • 17. Modelos Físicos ● Tipos de campos ○ Char(N) ○ Varchar(N) ○ Numeric(N,P) ○ Integer ○ Date ○ Time ○ TimeStamp N = Tamanho P = Precisão decimal
  • 19. O SQL ● A linguagem SQL (Structured Query Language – Linguagem de Consulta Estruturada) é uma linguagem declarativa utilizada por Sistemas Gerenciadores de Bancos de Dados Relacionais como: Oracle, SQL Server, MySQL, PostgreSQL, Firebird, e outros. ● Devido à sua ampla utilização por diversos SGBDs, surgiram vários dialetos para os comandos, que geraram a necessidade de criação de um padrão para a linguagem. Essa tarefa foi realizada pela American National Standards Institute (ANSI) em 1986 e ISO em 1987. Em 1992, foi realização uma revisão da linguagem que recebeu o nome de SQL-92.
  • 20. O SQL ● Em 1999 e 2003, ocorreram novas revisões. Na revisão de 1999, foram adicionados padrões para expressões regulares, consultas recursivas, triggers e algumas características de orientação a objeto. Na revisão de 2003, foram introduzidas características relacionadas a XML, sequências padronizadas e colunas com valores de auto- numeração. ● Uma dificuldade encontrada na utilização da linguagem SQL por parte dos desenvolvedores ou administradores de bancos de dados é a diferença entre os comandos nos diversos SGBDs, mesmo após a definição dos padrões. Porém, as diferenças não são grandes.
  • 21. O SQL - Tipos de linguagens ● DDL (Data Definition Language – Linguagem de Definição de Dados). ○ Os comandos DDL são usados para definir a estrutura do banco de dados, organizando em tabelas que são compostas por campos (colunas). Comandos que compõem a DDL: CREATE, ALTER, DROP.
  • 22. O SQL - Tipos de linguagens ● DML (Data Manipulation Language – Linguagem de Manipulação de Dados). ○ Os comandos DML permitem realizar operações de inserção, alteração, exclusão e seleção sobre os registros (linhas) das tabelas. Comandos que compõem a DML: INSERT, UPDATE, DELETE e SELECT. ○ Alguns autores definem que o comando SELECT faz parte de uma subdivisão chamada DQL (Data Query Language – Linguagem de Consulta de Dados).
  • 23. O SQL - Tipos de linguagens ● DCL (Data Control Language – Linguagem de Controle de Dados). Os comandos DCL são usados para gerenciar usuários e permissões de acesso ao Sistema Gerenciador de Banco de Dados. Comandos que compõem a DCL: GRANT e REVOKE. ● Alguns autores ainda definem uma subdivisão da linguagem SQL chamada DTL (Data Transaction Languagem – Linguagem de Transação de Dados). Uma transação pode ser compreendida como um conjunto de comandos que é executado de forma atômica, ou seja, ou todos os comandos são executados com sucesso ou nenhum dos resultados obtidos poreles será mantido no banco de dados.
  • 24. O SQL - Comandos DDL CREATE TABLE <nome_da_tabela> ( <nome_do_campo> <tipo_do_campo> <opções>, <nome_do_campo> <tipo_do_campo> <opções>, ... PRIMARY KEY(<nome_do_campo>) INDEX <nome_do_índice>(<nome_do_campo>), FOREIGN KEY(<nome_do_campo>) REFERENCES <nome_da_tabela_origem>(<nome_do_campo_origem>) ON DELETE <opção_de_referencia> ON UPDATE <opção_de_referencia>, ); ● <nome_da_tabela>: Nome da tabela a ser criada, não pode haver espaços e acentuações. ● <nome_do_campo>: Nome do campo da tabela, não pode haver espaços e acentuações. ● <tipo_do_campo>: Tipo do campo. Existem tipos padrões, porém existem tipos de campos específicos de cada SGBD. ● <opções>: Padronização do campo (valor padrão, auto incremento, limite numérico, etc...). ● Chave primária: Deve constar o nome do campo (se forma mais de um, separar por vírgula) que compões a chave primária. Caso a tabela não contenha uma chave primária, basta suprimir essa linha. ● Índices: Deve constar o nome do índice e o nome do campo (se forma mais de um campo, separar por vírgula) que compões o índice. Caso a tabela não contenha uma chave primária, basta suprimir essa linha. A tabela pode conter quantos índices forem necessários. ● Chave estrangeira: Deve constar o nome do campo que compões a chave, o nome da tabela de origem e o nome do campo da tabela de origem . Caso a tabela não contenha uma chave primária, basta suprimir essa linha. A opção de referência define o comportamento entre os registros da tabela (Se apagar na tabela-pai, apaga na tabela-filho, por exemplo).
  • 25. O SQL - Comandos DDL CREATE DATABASE Este comando é utilizado para criar um banco de dados. Exemplo: CREATE DATABASE loja; USE Sempre que for necessário manipular as tabelas de um banco de dados no SGBD MySQL, será necessário selecionar o banco de dados que se deseja manipular. Para isso, deve ser utilizado o comando USE. Exemplo: USE loja; CREATE TABLE Cria uma tabela de dados. Sintaxe: CREATE TABLE <nome_da_tabela> (definição dos campos); Exemplo: CREATE TABLE clientes( cpf integer unsigned not null, nome varchar(100) not null, data_nascimento date not null, sexo char(1) default ‘M’, salario decimal(10,2) default 0, profissao varchar(30), primary key(cpf) ); Cláusula DEFAULT A cláusula DEFAULT permite definir um valor padrão para um campo, que será utilizado caso não seja informado nenhum valor para esse campo na inserção de um registro na tabela. Exemplo: sexo char(1) default ‘M’, No exemplo acima, caso o campo “sexo” da tabela não seja preenchido com um valor durante a inserção de um registro, será assumido o valor ‘M’ para o campo. Para campos do tipo NUMÉRICO, o valor DEFAULT é escrito sem aspas. Exemplo: salario decimal(10,2) default 0,
  • 26. O SQL - Comandos DDL CONSTRAINTS (limitações, restrições) ● NOT NULL: define que um campo da tabela é obrigatório (deve receber um valor na inserção de um registro); ● PRIMARY KEY: define que um campo ou conjunto de campos para garantir a identidade de cada registro. Quando um campo é definido como chave primária, seu valor não pode se repetir em registros diferentes. Cada tabela só pode ter uma única chave primária. ○ CHAVE PRIMÁRIA SIMPLES: composta por um único campo. Exemplo: se for definido que em um sistema de hotéis não podem existir dois clientes com o mesmo CPF, portanto este campo deverá ser definido como CHAVE PRIMÁRIA. ○ CHAVE PRIMÁRIA COMPOSTA: formada por dois ou mais campos. Exemplo: se for definido em um sistema de Agências bancárias que não podem existir duas contas com o mesmo número da mesma agência, então esses dois campos formarão uma CHAVE PRIMÁRIA COMPOSTA, pois a combinação deles não pode se repetir. Criação de uma chave primária composta CREATE TABLE contas( numero integer not null, saldo integer default 0, agencia_numero integer not null, primary key(numero,agencia_numero) ); Ou CREATE TABLE contas( numero integer not null, saldo integer default 0, agencia_numero integer not null, constraint pk_conta primary key (numero, agencia_numero) ); Sintaxe: Criação de uma chave primária simples CREATE TABLE contas( numero integer not null primary key, saldo integer default 0, agencia_numero integer not null ); Ou CREATE TABLE contas( numero integer not null, saldo integer default 0, agencia_numero integer not null, primary key(numero) );
  • 27. O SQL - Comandos DDL CONSTRAINTS ● FOREIGN KEY: Uma chave estrangeira é definida quando se deseja relacionar tabelas do banco de dados. Sintaxe: CREATE TABLE contas( numero integer not null, saldo integer default 0, agencia_numero integer not null, primary key(numero,agencia_numero), foreign key(agencia_numero) references agencias(numero) ); Ou CREATE TABLE contas( numero integer not null, saldo integer default 0, agencia_numero integer not null, primary key(numero,agencia_numero), constraint fk_contaagencia foreign key(agencia_numero) references agencias(numero) );
  • 28. O SQL - Comandos DDL CONSTRAINTS ● UNIQUE: Uma constraint UNIQUE definie que o valor de um campo ou de uma sequência de campos não pode se repetir em registros da mesma tabela. Essa constraint é criada de forma implícita quando é definida uma chave primária para uma tabela. Como só é possível ter uma chave primária por tabela, a utilização de constraints UNIQUE é uma solução quando se deseja restringir valores repetidos em outros campos. Exemplo: CREATE TABLE clientes( cpf integer not null, nome varchar(100) not null, data_nascimento date not null, sexo char(1) default ‘M’, salario decimal(10,2) default 0, profissao varchar(30), rg integer not null, estado char(2) not null, primary key(cpf), constraint un_rgestado unique(rg,estado) );
  • 29. O SQL - Comandos DDL DROP TABLE O comando DROP TABLE é usado para apagar uma tabela do Banco de dados. Sintaxe: DROP TABLE <nome_da_tabela>; ALTER TABLE Para não se apagar uma tabela e recriá-la, é possível fazer alterações em sua estrutura por meio do comando ALTER TABLE. Isso é importante pois a execução do comando DROP TABLE apaga (obviamente) todos os registros da tabela, já a execução do comando ALTER TABLE não exclui nenhum registro. Adicionar um campo Sintaxe: ALTER TABLE <nome_da_tabela> ADD <nome_do_campo> <tipo_de_dado> <atributos> Exemplo: ALTER TABLE clientes ADD endereco varchar(90) not null; Alterar o tipo de dado de um campo Sintaxe: ALTER TABLE <nome_da_tabela> MODIFY <nome_do_campo> <tipo_de_dado> Exemplo: ALTER TABLE clientes MODIFY endereco varchar(200); Renomear um campo e modificar o tipo Sintaxe: ALTER TABLE <nome_da_tabela> CHANGE COLUMN <nome_do_campo novo_nome> <tipo>;
  • 30. O SQL - Comandos DDL ALTER TABLE Exemplo para mudar apenas o nome (o tipo do campo é mantido): ALTER TABLE clientes CHANGE COLUMN data_nascimento datanasc date; Exemplo para mudar o nome e o tipo do campo: ALTER TABLE clientes CHANGE COLUMN data_nascimento datahoranasc datetime; Renomear uma tabela Sintaxe: ALTER TABLE <nome_da_tabela> RENAME TO <novo_nome_da_tabela> Exemplo: ALTER TABLE clientes RENAME TO pessoas_fisicas Apagar um campo Sintaxe: ALTER TABLE <nome_da_tabela> DROP COLUMN <nome_do_campo> Exemplo: ALTER TABLE clientes DROP COLUMN endereco;
  • 31. O SQL - Comandos DDL ALTER TABLE Adicionar uma PRIMARY KEY Sintaxe: ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> PRIMARY KEY(campo1[,campo2,campo3,..., campoN]) Exemplo: ALTER TABLE clientes ADD CONSTRAINT pk_cpf PRIMARY KEY(cpf) Apagar uma PRIMARY KEY Sintaxe: ALTER TABLE <nome_da_tabela> DROP PRIMARY KEY Ou ALTER TABLE <nome_da_tabela> DROP CONSTRAINT <nome_da_constraint_da_primary_key> Exemplo: ALTER TABLE clientes DROP PRIMARY KEY; Ou ALTER TABLE clientes DROP CONSTRAINT pk_cpf;
  • 32. O SQL - Comandos DDL ALTER TABLE Adicionar uma FOREIGN KEY Sintaxe: ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> FOREIGN KEY(campo1[,campo2, campo3,...,campoN]) REFERENCES <nome_da_tabela>(campo1[,campo2,campo3,...,campoN]); Exemplo: ALTER TABLE contas ADD CONSTRAINT fk_contaagencia FOREIGN KEY(agencia_numero) REFERENCES agencias (numero); Adicionar uma constraint UNIQUE Sintaxe: ALTER TABLE <nome_da_tabela> ADD CONSTRAINT <nome_da_constraint> UNIQUE(campo1[,campo2,campo3,..., campoN]) Exemplo: ALTER TABLE clientes ADD CONSTRAINT un_rgestado UNIQUE(rg,estado) Apagar uma CONSTRAINT qualquer Sintaxe: ALTER TABLE <nome_da_tabela> DROP CONSTRAINT <nome_da_constraint> Exemplo: ALTER TABLE contas DROP CONSTRAINT fk_contaagencia Comando SHOW TABLES Para visualizar todas as tabelas em um banco de dados, utilize o comando SHOW TABLES. Exemplo: SHOW TABLES; Comando DESC Para visualizar a estrutura de uma tabela, utilize o comando DESC (ou DESCRIBE). Exemplo: DESC clientes;
  • 33. O SQL - Exemplo prático
  • 34. O SQL - Exemplo prático
  • 35. O SQL - Exemplo prático CREATE TABLE LIVRO ( idLIVRO INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, EXEMPLAR VARCHAR(20) NULL, ISBN NUMERIC(20) NULL, TITULO VARCHAR(200) NULL, AUTORES VARCHAR(500) NULL, PRIMARY KEY(idLIVRO) ); CREATE TABLE INSCRICAO ( idINSCRICAO INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, NOME VARCHAR(100) NULL, ENDERECO VARCHAR(500) NULL, TELEFONE VARCHAR(15) NULL, DATA_INSCRICAO DATE NULL, PRIMARY KEY(idINSCRICAO) ); CREATE TABLE RESERVA ( idRESERVA INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, LIVRO_idLIVRO INTEGER UNSIGNED NOT NULL, INSCRICAO_idINSCRICAO INTEGER UNSIGNED NOT NULL, DATA_RESERVA DATE NULL, PRIMARY KEY(idRESERVA), INDEX RESERVA_FKIndex1(INSCRICAO_idINSCRICAO), INDEX RESERVA_FKIndex2(LIVRO_idLIVRO), FOREIGN KEY(INSCRICAO_idINSCRICAO) REFERENCES INSCRICAO(idINSCRICAO) ON DELETE NO ACTION ON UPDATE NO ACTION, FOREIGN KEY(LIVRO_idLIVRO) REFERENCES LIVRO(idLIVRO) ON DELETE NO ACTION ON UPDATE NO ACTION ); CREATE TABLE REQUISICAO ( idREQUISICAO INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, INSCRICAO_idINSCRICAO INTEGER UNSIGNED NOT NULL, LIVRO_idLIVRO INTEGER UNSIGNED NOT NULL, DATA_REQUISICAO DATE NULL, DATA_ENTREGA DATE NULL, PRIMARY KEY(idREQUISICAO), INDEX REQUISICAO_FKIndex1(INSCRICAO_idINSCRICAO), INDEX REQUISICAO_FKIndex2(LIVRO_idLIVRO), FOREIGN KEY(INSCRICAO_idINSCRICAO) REFERENCES INSCRICAO(idINSCRICAO) ON DELETE NO ACTION ON UPDATE NO ACTION, FOREIGN KEY(LIVRO_idLIVRO) REFERENCES LIVRO(idLIVRO) ON DELETE NO ACTION ON UPDATE NO ACTION );
  • 36. O SQL - Manipulando os dados ● A subdivisão da linguagem SQL denominada DML (Data Manipulation Language) é composta pelos seguintes comandos: ○ INSERT: Inclui registro na tabela. ○ UPDATE: Atualiza registros já existentes na tabela. ○ DELETE: Exclui registros da tabela. ○ SELECT: Recupera registros armazenados na tabela (uma ou mais, simultâneamente).
  • 37. O SQL - Exemplo prático ● INSERT Sintaxe: INSERT INTO <nome_da_tabela> (<campo1,campo2, campo3,...,campoN>) VALUES (<valor1, valor2, valor3, ..., valorN>); ● Exemplo: INSERT INTO livro (EXEMPLAR, ISBN, TITULO, AUTORES) VALUES ('1', 98012345678, ’Meu Livro’, 'José da Silva'); ● Observações: 1) Valores do tipo TEXTO devem ser envolvidos por aspas simples ( ‘ ); 2) Valores do tipo numéricos (INTEGER, NUMERIC, DECIMAL, etc..) não são envolvidos por aspas simples e devem utilizar o ponto decimal para separação das casas decimais no lugar na vírgula. Ex.: 3.25
  • 38. O SQL - Exemplo prático ● Outra sintaxe do comando INSERT permite ocultar os campos e escrever somente os valores que serão inseridos. Exemplo: INSERT INTO livro VALUES ('1', 98012345678, ’Meu Livro’, 'José da Silva'); ● É possível usar o INSERT para múltiplos registros. Exemplo: INSERT INTO livro_backup SELECT * FROM livro; ● Observações: Para a execução do comando acima é necessário que os tipos de dados dos campos da tabela cidades_backup estejam na mesma ordem dos tipos de dados dos campos da tabela cidades.
  • 39. O SQL - Exemplo prático ● UPDATE Sintaxe: UPDATE <nome_da_tabela> SET <campo1 = valor1>, <campo2 = valor2>, <campo3 = valor3>, ..., <campoN = valorN> [ WHERE condições] ● Exemplo: UPDATE livro SET titulo = ‘O Alienista’; ● O comando UPDATE acima altera o campo titulo de todas os livros para ‘O Alienista’.
  • 40. O SQL - Exemplo prático ● Para restringir a alteração dos registros a um subconjunto deles, é utilizada a cláusula WHERE, que permite processar uma ou mais condições. ● Exemplo: UPDATE livro SET titulo = ‘O Alienista’, Autor = ‘Machado de Assis’ WHERE isbn = 98012345678;
  • 41. O SQL - Exemplo prático ● DELETE Sintaxe: DELETE FROM <nome_da_tabela> [WHERE condições]; ● Exemplo: DELETE FROM livro; ● O comando acima exclui todos os registros da tabela livro. Para excluir apenas um subconjunto dos registros, é necessário utilizar a cláusula WHERE. Exemplo: DELETE FROM livro WHERE isbn = 98012345678;
  • 42. O SQL - Exemplo prático ● SELECT Sintaxe: SELECT <campo1>, <campo2>, ..., <campoN> FROM <tabela1>, <tabela2>, ..., <tabelaN> [ JOIN <tabela> ON condições] [ WHERE condições ] [ORDER BY <campos>]; ● Exemplos: Exibir todos os campos de uma tabela SELECT * FROM livro; Exibir um campo de uma tabela SELECT titulo FROM livro; Exibir mais de um campo de uma tabela SELECT titulo, autor FROM livro;
  • 43. O SQL - Exemplo prático ● SELECT Apelidando campos SELECT titulo as nome_livro, isbn as isbn_livro FROM livro; Apelidando tabelas SELECT titulo, isbn FROM livro as acervo; Selecionando campos a partir do nome da tabela SELECT livro.titulo, livro.isbn FROM livro; Selecionando campos a partir do apelido da tabela SELECT acervo.titulo, acervo.isbn FROM livro as acervo;
  • 44. O SQL - Exemplo prático ● Cláusula WHERE ● Igual: = UPDATE livro SET autor = ‘Machado de Assis’ WHERE isbn = 98012345678; ● Diferente: <> UPDATE INSCRICAO SET endereco = ‘Rua dos Bobos 0’ WHERE idINSCRICAO <> 1; ● Maior: > SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO > '2006/07/26'; ● Menor: < SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO < '2006/07/26'; ● Maior ou igual: >= SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO >= '2006/07/26'; ● Menor ou igual: <= SELECT * FROM INSCRICAO WHERE DATA_INSCRICAO <= '2006/07/26'; ● IN: Comparação de igualdade com múltiplos valores SELECT * FROM INSCRICAO WHERE nome IN ('José','Maria','Silveira');
  • 45. O SQL - Exemplo prático ● Cláusula WHERE ● LIKE: Comparação de partes do texto SELECT * FROM INSCRICAO WHERE nome LIKE ‘a%’; Seleciona todos o inscritos cujos nomes iniciam pela letra “a”. SELECT * FROM INSCRICAO WHERE nome LIKE ‘%o’; Seleciona todos os inscritos cujos nomes terminam pela letra “o”. SELECT * FROM INSCRICAO WHERE nome LIKE ‘%a%’; Seleciona todos os inscritos cujos nomes possuem a letra “a” em qualquer posição (início, meio ou fim).
  • 46. O SQL - Exemplo prático ● Cláusula WHERE ● Soma: + UPDATE funcionarios SET salario = salario + 10; Acrescenta R$ 10,00 ao salário dos funcionários. ● Subtração: - UPDATE funcionarios SET salario = salario – 5 WHERE salario > 1000; Subtrai R$ 5,00 do salário dos funcionários que ganham mais de R$ 1000,00. ● Multiplicação: * UPDATE funcionarios SET salario = salario*1.1; Aumenta o salário dos funcionários em 10%. ● Divisão: / UPDATE funcionarios SET salario = salario + salario*(10/100); Aumenta o salário dos funcionários em 10%. ● IS: Operador especial para comparação de igualdade. Este operador é usado para comparação com o valor NULL. SELECT nome FROM funcionarios WHERE celular IS NULL.
  • 47. O SQL - Exemplo prático ● Cláusula WHERE ● AND SELECT * FROM INSCRICAO WHERE nome LIKE ‘a%’ AND DATA_INSCRICAO <= ‘1980/01/01’; Seleciona todos os inscritos cujos nomes iniciam pela letra “a” e cujas datas de inscrição são anteriores a 01/01/1980. ● OR SELECT * FROM livro WHERE isbn='987123' OR isbn ='987456'; Seleciona os livros cujos os ISBN sejam 987123 ou 987456. ● Multiplicação: * UPDATE funcionarios SET salario = salario*1.1; Aumenta o salário dos funcionários em 10%. ● NOT SELECT nome FROM funcionarios WHERE NOT(salario < 1000); Seleciona o nome dos funcionários que não possuem salário menor que 1000.
  • 48. O SQL - Exemplo prático ● Junção de tabelas ● Usando a cláusula WHERE SELECT * FROM REQUISICAO , LIVRO WHERE REQUISICAO.LIVRO_idLIVRO = LIVRO.idLIVRO; Para a junção de tabelas, sempre devem ser escritas as condições entre os campos que estão relacionados nas tabelas. Geralmente, essas condições envolvem os campos que são chaves estrangeiras de uma tabela e os que são chaves primárias da outra, porém nada impede de serem feitas condições entre campos que não são chaves. ● Usando a cláusula JOIN SELECT * FROM LIVRO INNER JOIN requisicao ON REQUISICAO. LIVRO_idLIVRO = LIVRO.idLIVRO; A cláusula INNER JOIN define que serão selecionados somente os registros de uma tabela que possuem relação com os registros da outra tabela.
  • 49. O SQL - Exemplo prático ● Junção de tabelas ● Usando a cláusula LEFT JOIN SELECT requisicao.data_requisicao, inscricao.nome FROM inscricao LEFT JOIN requisicao ON requisicao.INSCRICAO_idINSCRICAO = inscricao. idINSCRICAO; Para interpretar o LEFT JOIN, faz-se a pergunta: qual tabela está à esquerda do JOIN? No comando acima, a tabela que está à esquerda da cláusula JOIN é a tabela inscricao. Portanto, serão selecionados todos os registros da tabela inscricao estando ou não relacionados com a tabela requisicao pelo camp o de chave primária. ● Usando a cláusula RIGHT JOIN SELECT requisicao.data_requisicao, inscricao.nome FROM inscricao RIGHT JOIN requisicao ON requisicao.INSCRICAO_idINSCRICAO = inscricao. idINSCRICAO; Para interpretar o RIGHT JOIN, faz-se a pergunta: qual tabela está à direita do JOIN? A tabela requisicao. Portanto, serão selecionados todos os registros da tabela requisicao que estão ou não relacionados com os registros da tabela inscricao.
  • 50. O SQL - Exemplo prático ● Cláusula ORDER BY Sintaxe: SELECT ... ORDER BY <campo1>, <campo2>, <campoN> ... [desc|asc] ● Exemplos: Seleciona os livros cujos títulos iniciam pela letra “a” e ordena a lista primeiramente pelo autor e, em seguida, pelos títulos dos livros. SELECT * FROM livro WHERE titulo LIKE ‘a%’ ORDER BY autor, titulo; Seleciona todos os livros ordenando decrescentemente pelo título e, se houver repetição de valores, obedece à ordem crescente do autor. SELECT * FROM livro ORDER BY titulo DESC, autor; Seleciona todos os livros ordenando crescentemente pelo título e, se houver repetição de valores, obedece à ordem decrescente do nome do autor. SELECT * FROM livro ORDER BY titulo, autor DESC;
  • 51. Concluindo ● É importante possuir uma documentação mínima sobre o banco de dados para poder se localizar e fazer a manutenção do mesmo. ● Conhecer pelo menos um tipo de modelo de banco de dados facilita a interatividade entre ferramentas e a comunicação com os profissionais envolvidos com o sistema. ● Decorar comandos não é o importante. O importante é saber o funcionamento!