3 HONDA 5 NNI2233 CIVIC HONDA 2017 112045GASOLINA 4 RENAULT 6 HWW0091 GOLF WV 2019 99000GASOLINA 5 FIAT 7 PWT4627 CLIO RENAULT 2009 19020GASOLINA 6 CITROEN
Mais opções
Banco de Dados (Prof Silvano) 2
Solução da Repetição (Ganho de espaço)
id placa modelo fabricante ano valor combustivel
1 HHH9999 GOL 1 1998 4000 ALCOOL
2 PPP0909 CHEVY 2 1980 5500.4 ALCOOL
3 HOW3531 PRISMA 2 2010 10002 GASOLINA
4 PST1059 FIT 3 2016 69346 GASOLINA
5 NNI2233 CIVIC 3 2017 112045 GASOLINA
6 HWW0091 GOLF 1 2019 99000 GASOLINA
7 PWT4627 CLIO 4 2009 19020 GASOLINA
Banco de Dados (Prof Silvano) 3
Cruzar os dados das tabelas (UNIR)
Select * from veiculo join
fabricante on veiculo.fabricante=fabricante.id;
Banco de Dados (Prof Silvano) 4
id placa modelo fabricante ano valor combustivel id fabricante
1 HHH9999 GOL 1 1998 4000 ALCOOL 1 WV
2 PPP0909 CHEVY 2 1980 5500.4 ALCOOL 2 GM
3 HOW3531 PRISMA 2 2010 10002 GASOLINA 2 GM
4 PST1059 FIT 3 2016 69346 GASOLINA 3 HONDA
5 NNI2233 CIVIC 3 2017 112045 GASOLINA 3 HONDA
6 HWW0091 GOLF 1 2019 99000 GASOLINA 1 WV
7 PWT4627 CLIO 4 2009 19020 GASOLINA 4 RENAULT
Banco de Dados (Prof Silvano) 5
Cruzando dados com campos específicos
select v.placa, v.modelo,
v.combustivel, f.fabricante from veiculo v join fabricante f on f.id=v.fabricante;
Banco de Dados (Prof Silvano) 6
placa modelo combustivel fabricante
HHH9999 GOL ALCOOL WV
PPP0909 CHEVY ALCOOL GM
HOW3531 PRISMA GASOLINA GM
PST1059 FIT GASOLINA HONDA
NNI2233 CIVIC GASOLINA HONDA
HWW0091 GOLF GASOLINA WV
PWT4627 CLIO GASOLINA RENAULT
Banco de Dados (Prof Silvano) 7
PROBLEMAS
Incluir um veículo com um código de fabricante que
não existe. Insert into veiculo values (null,'XXX8888','TWINGO',7,2000,20111,'FLEX');
Banco de Dados (Prof Silvano) 8
Vendo o resultado Select * from veiculo join fabricante on veiculo.fabricante=fabricante.id; id placa modelo fabricante ano valor combustivel id fabricante
1 HHH9999 GOL 1 1998 4000 ALCOOL 1 WV
2 PPP0909 CHEVY 2 1980 5500.4 ALCOOL 2 GM
3 HOW3531 PRISMA 2 2010 10002 GASOLINA 2 GM
4 PST1059 FIT 3 2016 69346 GASOLINA 3 HONDA
5 NNI2233 CIVIC 3 2017 112045 GASOLINA 3 HONDA
6 HWW0091 GOLF 1 2019 99000 GASOLINA 1 WV
7 PWT4627 CLIO 4 2009 19020 GASOLINA 4 RENAULT
Banco de Dados (Prof Silvano) 9
Solução do Problema anterior
Vincular as tabelas para que não haja
inclusão sem que exista correspondente.
Banco de Dados (Prof Silvano) 10
Chave Estrangeira
A finalidade da Chave Estrangeira é vincular
duas tabelas para que as mesmas não permitam a quebra de integridade, ou seja, dados perdidos. Usa-se a cláusula FOREIGN KEY, semelhante a PRIMARY KEY.