SlideShare uma empresa Scribd logo
1 de 40
BANCO DE DADOS
P R O G R A M A Ç Ã O C O M A C E S S O
JOELDSON COSTA DAMASCENO
Joeldson.damasceno@ifrn.edu.br
O que é um
banco de dados relacional?
VAMOS COMEÇAR A CRIAR UM BANCO.
CALMA! ESPERE UM POUCO.
IMPORTANTE!
 Não se pode criar um banco de dados sem nenhum conhecimento.
 É IMPORTANTE conhecer pelo menos o básico.
Fundamentos
Uma unidade de
dados no Arquivo
é chamado de
registro (record).
R
E
G
I
S
T
R
O
E Cada item no registro
É chamado de campo (field).
Quer dizer que
um produto
corresponde a
um registro?
ISSO
MESMO.
Então o código do
produto, o nome
do produto, o preço
unitário. E os
comentários são
campos, certo?
Código do
Produto
Nome do
Produto
Preço Unitário Comentários
101 Melão 800 Com sementes
102 Morango 150
103 Maçã 120
104 Limão 200
201 Pinhão 100
202 Caqui 160
... ... ... ...
Registro
Campos
Cada registro contém campos do mesmo tipo,
por exemplo:
1) Código do produto é um valor de
três dígitos...
2) E nome do produto tem dez
caracteres ou menos.
Código do
Produto
Nome do
Produto
Preço Unitário Comentários
101 Melão 800 Com sementes
102 Morango 150
103 Maçã 120
104 Limão 200
201 Pinhão 100
202 Caqui 160
... ... ... ...
Agora, vamos pensar um pouco sobre o
código do produto um pouco mais
detalhadamente.
Hmmm...
Registro...
Campo...
Tanta coisa
para decorar...
Aff...
AQUI!
Percebeu que não há dois códigos de
produto iguais?
E não existem
registros
duplicados. Então,
se você sabe que o
código do produto é
101,
102
103
Pode identificar o
produto como sendo
melão.
101
Código do Produto Nome do Produto Preço Unitário Comentários
101 Melão 800 Com sementes
102 Morango 150
103 Maçã 120
104 Limão 200 Azedo
201 Pinhão 100 Com casca
202 Caqui 160
301 Pêssego 130
302 Kiwi 200 Alta qualidade
... ... ... ...
Observe que há valores
repetidos na tabela, mas
não tem como saber se e
um limão ou um kiwi. Ou
seja, mesmo que você
saiba que o preço de uma
fruta é 200...
• Então podemos identificar dados pelos códigos do produto, mas
não pelo preço unitário.
• No mundo dos bancos de dados, um campo como o de código
do produto, os valores não se repetem.
• É chamado de único (unique).
Código único
Os comentários
• O campo de comentários, serve para fazer uma descrição do
produto.
• Não há como identificar o produto olhando os comentários.
Código do
Produto
Nome do Produto Preço Unitário Comentários
101 Melão 800 Com sementes
102 Morango 150
103 Maçã 120
104 Limão 200 Azedo
201 Pinhão 100 Com casca
202 Caqui 160
301 Pêssego 130
302 Kiwi 200 Alta qualidade
... ... ... ...
Algumas valores
abaixo de
comentários
estão vazios?
Código do
Produto
Nome do Produto Preço Unitário Comentários
101 Melão 800 Com sementes
102 Morango 150
103 Maçã 120
104 Limão 200 Azedo
201 Pinhão 100 Com casca
202 Caqui 160
301 Pêssego 130
302 Kiwi 200 Alta qualidade
... ... ... ...
A ausência de um
valor é chamada de
nulo (null), no
mundo dos banco de
dados.
Um nulo é aceitável
em comentários, mas
não em códigos de
produtos, que
identificam dados.Umnulo.
Não pode
ser nulo.
Quando você usa o termo Banco de Dados, que tipo de banco de
dados vem em sua mente?
Existem vários tipos de bancos de dados, para isso, vamos
entender os tipos de modelos de dados.
Tipos de modelos de dados
Modelo hierárquico
Tipos de modelos de dados
Modelo de dados em rede
Tipos de modelos de dados
Modelo de dados relacional
No modelo de
banco dados
relacional, uma
tabela também é
chamada de
relacionamento. RELAÇÃO
Uma unidade de dados ou um
registro é chamada de linha.
E cada item do banco de
dados ou campo é chamado
de coluna.
Chave (key)
• Além dos conceitos anteriores, algumas vezes um campo tem
um papel importante no banco de dados.
• Esse campo especial é chamado de chave (key).
Lembra do
campo código?
Esse código é
chamado de
chave primária
(PRIMARY KEY)
O modelo de banco de dados relacional é projetado de forma que
se possa processar os dados com operações matemáticas.
Indo mais além...
Existem muitas
operações, de
fato, são oito!
Projeção
Operações
Produto
Cartesiano
Uma vantagem do MODELO
de DADOS RELACIONAL é que
se pode processar os dados
combinando essas operações.
Operações de extração de dados
Operações de conjuntos
Nome do Produto Preço Unitário
Melão 800 R$
Morango 150 R$
Maçã 120 R$
Limão 200 R$
Nome do Produto Preço Unitário
Melão 800 R$
Morango 150 R$
Pinhão 100 R$
Caqui 350 R$
Tabela produto 1 Tabela produto 2
Operações de extração de dados
UNIÃO
Nome do Produto Preço Unitário
Melão 800 R$
Morango 150 R$
Maçã 120 R$
Limão 200 R$
Pinhão 100 R$
Caqui 350 R$
Maçã
Limão
Melão
Morango
Pinhão
Caqui
TABELA DE
PRODUT 1
TABELA DE
PRODUT 2
Operações de extração de dados
DIFERENÇA
Nome do Produto Preço Unitário
Maçã 120 G
Limão 200 G
Nome do Produto Preço Unitário
Pinhão 100 G
Caqui 350 G
TABELA DE
PRODUT 1
TABELA DE
PRODUT 2
Maçã
Limão
Melão
Morango
Pinhão
Caqui
TABELA DE
PRODUT 1
TABELA DE
PRODUT 2
Maçã
Limão
Melão
Morango
Pinhão
Caqui
Operações de extração de dados
INTERSECÇÃO
Nome do Produto Preço Unitário
Maçã 120 G
Limão 200 G
TABELA DE
PRODUT 1
TABELA DE
PRODUT 2
Maçã
Limão
Melão
Morango
Pinhão
Caqui
Operações de extração de dados
PRODUTO CARTESIANO
Código do
Produto
Nome do
Produto
Preço
Unitário
101 Melão 800 G
102 Morango 150 G
103 Maçã 120 G
Tabela de Produtos
Cód. Dest.
Export.
Nome Dest. Export.
12 África
23 EUA
25 Argentina
Tabela de Produtos
3 linhas
Código do
Produto
Nome do
Produto
Preço Unitário Cód. Dest.
Export.
Nome Dest.
Export.
101 Melão 800 G 101 África
101 Melão 800 G 101 África
101 Melão 800 G 101 África
102 Morango 150 G 102 EUA
102 Morango 150 G 102 EUA
102 Morango 150 G 102 EUA
103 Maçã 120 G 103 Argentina
103 Maçã 120 G 103 Argentina
103 Maçã 120 G 103 Argentina
3 x 3 = 9 linhas
PRODUTO CARTESIANO
Operações Relacionais
PROJEÇÃO
Projeção é uma operação que extrai colunas de uma tabela.
Nome do Produto
Melão
Morango
Maçã
Limão
Pense na projeção como
extração “vertical”, como
mostrado abaixo:”
Nessa operação foi
usada para extrair
apenas os nomes de
produtos incluídos na
Tabela de Produtos.
Operações Relacionais
SELEÇÃO
A operação de seleção extrai linhas de uma tabela.
Nome do Produto Preço Unitário
Maçã 120 G
Limão 200 G
Seleção ´como projeção, mas extrai linhas em vez de colunas. A seleção extrai dados
“horizontalmente”.
Operações Relacionais
JUNÇÃO
A operação de Junção(join) é muito poderosa. Ela literalmente refere-se à tarefa de
juntar tabelas. Vamos examinar as tabelas abaixo como exemplo.
Código do
Produto
Nome do
Produto
Preço
Unitário
101 Melão 800 G
102 Morango 150 G
103 Maçã 120 G
104 Limão 200 G
Tabela de Produtos
Data
Código do
Produto
Quantidade
1/11 102 1100
1/11 101 300
5/11 103 1700
8/11 101 500
Tabela de Vendas
Data
Código do Produto
Nome do
Produto
Preço Unitário
Quantidade
1/11 101 Melão 800 G 1100
1/11 102 Morango 150 G 300
5/11 103 Maçã 120 G 1700
8/11 104 Limão 200 G 500
Operações Relacionais
DIVISÃO
Divisão é uma operação que extrai as linhas cujos valores de coluna
correspondem àquelas na segunda tabela. Vamos ver um exemplo.
Cód. Dest.
Export.
Nome Dest.
Export.
Data
12 África 5/3
12 África 10/3
23 EUA 5/3
25 Argentina 21/3
30 Portugal 25/3
Cód. Dest.
Export.
Nome Dest.
Export.
12 África
23 EUA
Tabela de Vendas
Tabela de Destino de Exportação
Dividir a Tabela de Vendas pela de Destino da Exportação resulta
na tabela a seguir. Isso permite encontrar as datas quando as frutas
foram exportadas tanto para o EUA quanto para a África.
Data
5/3
RESPONDER OS
EXERCÍCIOS
• Baixar e responder o exercício de Banco de Dados Relacional no Acadêmico.
• Entregar na próxima aula.
Pergunta ?

Mais conteúdo relacionado

Mais procurados

Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesElaine Cecília Gatto
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoRademaker Siena
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Modelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e HierárquicoModelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e Hierárquicorosimaracorsino
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Vitor Hugo Melo Araújo
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha casoEder Samaniego
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08André Phillip Bertoletti
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisFabrício Lopes Sanchez
 
Lógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoLógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoJanynne Gomes
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareUFPA
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggersDaniel Maia
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
 

Mais procurados (20)

Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e Funções
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Algoritmo - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos 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
 
Modelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e HierárquicoModelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e Hierárquico
 
12 SQL - Junções / Join
12 SQL - Junções / Join12 SQL - Junções / Join
12 SQL - Junções / Join
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha caso
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08
 
Algoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - LacosAlgoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - Lacos
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Lógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoLógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de Seleção
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de Software
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggers
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 

Destaque

Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objetoelliando dias
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalizaçãoLuan Caldas
 
Instalação de Servidor FTP - Microsoft Windows Server 2008
Instalação de Servidor FTP - Microsoft Windows Server 2008Instalação de Servidor FTP - Microsoft Windows Server 2008
Instalação de Servidor FTP - Microsoft Windows Server 2008Joeldson Costa Damasceno
 
Instalação e configuração - Servidor DHCP
Instalação e configuração - Servidor DHCPInstalação e configuração - Servidor DHCP
Instalação e configuração - Servidor DHCPJoeldson Costa Damasceno
 
Herança em Banco de Dados Objeto-Relacional (BDOR)
Herança em Banco de Dados Objeto-Relacional (BDOR)Herança em Banco de Dados Objeto-Relacional (BDOR)
Herança em Banco de Dados Objeto-Relacional (BDOR)Rafael Barbolo
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetosDaiana de Ávila
 
Banco de dados orientado a objetos
Banco de dados orientado a objetosBanco de dados orientado a objetos
Banco de dados orientado a objetosStefan Horochovec
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesMarco Martins
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Vitor Leal Diniz
 
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 DadosRafael Albani
 
Excel Avançado - Aulas
Excel Avançado - AulasExcel Avançado - Aulas
Excel Avançado - AulasGustavo Sousa
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dadosEdgar Stuart
 

Destaque (18)

Banco de dados orientado a objetos
Banco de dados orientado a objetosBanco de dados orientado a objetos
Banco de dados orientado a objetos
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objeto
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalização
 
02 banco de dados relacional
02 banco de dados relacional02 banco de dados relacional
02 banco de dados relacional
 
Instalação de Servidor FTP - Microsoft Windows Server 2008
Instalação de Servidor FTP - Microsoft Windows Server 2008Instalação de Servidor FTP - Microsoft Windows Server 2008
Instalação de Servidor FTP - Microsoft Windows Server 2008
 
Banco de Dados Relacional Estendido
Banco de Dados Relacional EstendidoBanco de Dados Relacional Estendido
Banco de Dados Relacional Estendido
 
Instalação e configuração - Servidor DHCP
Instalação e configuração - Servidor DHCPInstalação e configuração - Servidor DHCP
Instalação e configuração - Servidor DHCP
 
Herança em Banco de Dados Objeto-Relacional (BDOR)
Herança em Banco de Dados Objeto-Relacional (BDOR)Herança em Banco de Dados Objeto-Relacional (BDOR)
Herança em Banco de Dados Objeto-Relacional (BDOR)
 
Aula 11 banco de dados
Aula 11   banco de dadosAula 11   banco de dados
Aula 11 banco de dados
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetos
 
Banco de dados orientado a objetos
Banco de dados orientado a objetosBanco de dados orientado a objetos
Banco de dados orientado a objetos
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redes
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012
 
Modelos de base de dados
Modelos de base de dadosModelos de base de dados
Modelos de base de dados
 
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
 
Introdução a Bancos de Dados
Introdução a Bancos de DadosIntrodução a Bancos de Dados
Introdução a Bancos de Dados
 
Excel Avançado - Aulas
Excel Avançado - AulasExcel Avançado - Aulas
Excel Avançado - Aulas
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dados
 

Mais de Joeldson Costa Damasceno

Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoJoeldson Costa Damasceno
 
Estatuto da Criança e do Adolescente + Questões de Concurso Público.
Estatuto da Criança e do Adolescente + Questões de Concurso Público.Estatuto da Criança e do Adolescente + Questões de Concurso Público.
Estatuto da Criança e do Adolescente + Questões de Concurso Público.Joeldson Costa Damasceno
 
Aula 01 - Redação Oficial - Aplicação em Concursos Públicos
Aula 01 - Redação Oficial - Aplicação em Concursos PúblicosAula 01 - Redação Oficial - Aplicação em Concursos Públicos
Aula 01 - Redação Oficial - Aplicação em Concursos PúblicosJoeldson Costa Damasceno
 
Informática Básica - Software de Apresentações - Microsoft Power Point
Informática Básica - Software de Apresentações - Microsoft Power PointInformática Básica - Software de Apresentações - Microsoft Power Point
Informática Básica - Software de Apresentações - Microsoft Power PointJoeldson Costa Damasceno
 
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Joeldson Costa Damasceno
 
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010Joeldson Costa Damasceno
 
Informática Básica - Formatação de Documentos no Microsoft Word 2010
Informática Básica - Formatação de Documentos no Microsoft Word 2010Informática Básica - Formatação de Documentos no Microsoft Word 2010
Informática Básica - Formatação de Documentos no Microsoft Word 2010Joeldson Costa Damasceno
 
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010Joeldson Costa Damasceno
 
Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Joeldson Costa Damasceno
 
Informática Básica - Aula 09 - Uso de E-mail
Informática Básica - Aula 09 - Uso de E-mailInformática Básica - Aula 09 - Uso de E-mail
Informática Básica - Aula 09 - Uso de E-mailJoeldson Costa Damasceno
 
Informática Básica - Aula 06 - Utilitários e Ferramentas do Sistema
Informática Básica - Aula 06 - Utilitários e Ferramentas do SistemaInformática Básica - Aula 06 - Utilitários e Ferramentas do Sistema
Informática Básica - Aula 06 - Utilitários e Ferramentas do SistemaJoeldson Costa Damasceno
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsJoeldson Costa Damasceno
 
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresInformática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresJoeldson Costa Damasceno
 
Informática Básica - Aula 01 - Introdução
Informática Básica - Aula 01 - IntroduçãoInformática Básica - Aula 01 - Introdução
Informática Básica - Aula 01 - IntroduçãoJoeldson Costa Damasceno
 

Mais de Joeldson Costa Damasceno (20)

Pitch de apresentação - Aula prática
Pitch de apresentação - Aula práticaPitch de apresentação - Aula prática
Pitch de apresentação - Aula prática
 
Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e Validação
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
Estatuto da Criança e do Adolescente + Questões de Concurso Público.
Estatuto da Criança e do Adolescente + Questões de Concurso Público.Estatuto da Criança e do Adolescente + Questões de Concurso Público.
Estatuto da Criança e do Adolescente + Questões de Concurso Público.
 
Scrum - conceitos iniciais
Scrum - conceitos iniciaisScrum - conceitos iniciais
Scrum - conceitos iniciais
 
Aula 01 - Redação Oficial - Aplicação em Concursos Públicos
Aula 01 - Redação Oficial - Aplicação em Concursos PúblicosAula 01 - Redação Oficial - Aplicação em Concursos Públicos
Aula 01 - Redação Oficial - Aplicação em Concursos Públicos
 
Ergonomia
ErgonomiaErgonomia
Ergonomia
 
Informática Básica - Software de Apresentações - Microsoft Power Point
Informática Básica - Software de Apresentações - Microsoft Power PointInformática Básica - Software de Apresentações - Microsoft Power Point
Informática Básica - Software de Apresentações - Microsoft Power Point
 
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010Informática Básica - Planilha Eletronica - Microsoft Excel 2010
Informática Básica - Planilha Eletronica - Microsoft Excel 2010
 
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010
Informática Básica - Criação de Tabelas e Gráficos no Microsoft Word 2010
 
Informática Básica - Formatação de Documentos no Microsoft Word 2010
Informática Básica - Formatação de Documentos no Microsoft Word 2010Informática Básica - Formatação de Documentos no Microsoft Word 2010
Informática Básica - Formatação de Documentos no Microsoft Word 2010
 
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010
Informática Básica - Criação e Edição de Documentos no Microsoft Word 2010
 
Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010
 
Informática Básica - Aula 09 - Uso de E-mail
Informática Básica - Aula 09 - Uso de E-mailInformática Básica - Aula 09 - Uso de E-mail
Informática Básica - Aula 09 - Uso de E-mail
 
Informática Básica - Aula 06 - Utilitários e Ferramentas do Sistema
Informática Básica - Aula 06 - Utilitários e Ferramentas do SistemaInformática Básica - Aula 06 - Utilitários e Ferramentas do Sistema
Informática Básica - Aula 06 - Utilitários e Ferramentas do Sistema
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional Windows
 
Informática Básica - Aula 04 - Software
Informática Básica - Aula 04 - SoftwareInformática Básica - Aula 04 - Software
Informática Básica - Aula 04 - Software
 
Informática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - HardwareInformática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - Hardware
 
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresInformática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
 
Informática Básica - Aula 01 - Introdução
Informática Básica - Aula 01 - IntroduçãoInformática Básica - Aula 01 - Introdução
Informática Básica - Aula 01 - Introdução
 

O que é um Banco de Dados Relacional?

  • 1. BANCO DE DADOS P R O G R A M A Ç Ã O C O M A C E S S O JOELDSON COSTA DAMASCENO Joeldson.damasceno@ifrn.edu.br O que é um banco de dados relacional?
  • 2. VAMOS COMEÇAR A CRIAR UM BANCO. CALMA! ESPERE UM POUCO.
  • 3. IMPORTANTE!  Não se pode criar um banco de dados sem nenhum conhecimento.  É IMPORTANTE conhecer pelo menos o básico.
  • 5. Uma unidade de dados no Arquivo é chamado de registro (record). R E G I S T R O E Cada item no registro É chamado de campo (field).
  • 6. Quer dizer que um produto corresponde a um registro? ISSO MESMO. Então o código do produto, o nome do produto, o preço unitário. E os comentários são campos, certo?
  • 7. Código do Produto Nome do Produto Preço Unitário Comentários 101 Melão 800 Com sementes 102 Morango 150 103 Maçã 120 104 Limão 200 201 Pinhão 100 202 Caqui 160 ... ... ... ... Registro Campos Cada registro contém campos do mesmo tipo, por exemplo: 1) Código do produto é um valor de três dígitos... 2) E nome do produto tem dez caracteres ou menos.
  • 8. Código do Produto Nome do Produto Preço Unitário Comentários 101 Melão 800 Com sementes 102 Morango 150 103 Maçã 120 104 Limão 200 201 Pinhão 100 202 Caqui 160 ... ... ... ... Agora, vamos pensar um pouco sobre o código do produto um pouco mais detalhadamente. Hmmm... Registro... Campo... Tanta coisa para decorar... Aff... AQUI!
  • 9. Percebeu que não há dois códigos de produto iguais?
  • 10. E não existem registros duplicados. Então, se você sabe que o código do produto é 101, 102 103 Pode identificar o produto como sendo melão. 101
  • 11. Código do Produto Nome do Produto Preço Unitário Comentários 101 Melão 800 Com sementes 102 Morango 150 103 Maçã 120 104 Limão 200 Azedo 201 Pinhão 100 Com casca 202 Caqui 160 301 Pêssego 130 302 Kiwi 200 Alta qualidade ... ... ... ... Observe que há valores repetidos na tabela, mas não tem como saber se e um limão ou um kiwi. Ou seja, mesmo que você saiba que o preço de uma fruta é 200...
  • 12. • Então podemos identificar dados pelos códigos do produto, mas não pelo preço unitário. • No mundo dos bancos de dados, um campo como o de código do produto, os valores não se repetem. • É chamado de único (unique). Código único
  • 13. Os comentários • O campo de comentários, serve para fazer uma descrição do produto. • Não há como identificar o produto olhando os comentários.
  • 14. Código do Produto Nome do Produto Preço Unitário Comentários 101 Melão 800 Com sementes 102 Morango 150 103 Maçã 120 104 Limão 200 Azedo 201 Pinhão 100 Com casca 202 Caqui 160 301 Pêssego 130 302 Kiwi 200 Alta qualidade ... ... ... ... Algumas valores abaixo de comentários estão vazios?
  • 15. Código do Produto Nome do Produto Preço Unitário Comentários 101 Melão 800 Com sementes 102 Morango 150 103 Maçã 120 104 Limão 200 Azedo 201 Pinhão 100 Com casca 202 Caqui 160 301 Pêssego 130 302 Kiwi 200 Alta qualidade ... ... ... ... A ausência de um valor é chamada de nulo (null), no mundo dos banco de dados. Um nulo é aceitável em comentários, mas não em códigos de produtos, que identificam dados.Umnulo. Não pode ser nulo.
  • 16. Quando você usa o termo Banco de Dados, que tipo de banco de dados vem em sua mente? Existem vários tipos de bancos de dados, para isso, vamos entender os tipos de modelos de dados.
  • 17. Tipos de modelos de dados Modelo hierárquico
  • 18. Tipos de modelos de dados Modelo de dados em rede
  • 19. Tipos de modelos de dados Modelo de dados relacional
  • 20. No modelo de banco dados relacional, uma tabela também é chamada de relacionamento. RELAÇÃO
  • 21. Uma unidade de dados ou um registro é chamada de linha. E cada item do banco de dados ou campo é chamado de coluna.
  • 22.
  • 23. Chave (key) • Além dos conceitos anteriores, algumas vezes um campo tem um papel importante no banco de dados. • Esse campo especial é chamado de chave (key). Lembra do campo código?
  • 24. Esse código é chamado de chave primária (PRIMARY KEY)
  • 25. O modelo de banco de dados relacional é projetado de forma que se possa processar os dados com operações matemáticas. Indo mais além...
  • 26. Existem muitas operações, de fato, são oito! Projeção Operações Produto Cartesiano Uma vantagem do MODELO de DADOS RELACIONAL é que se pode processar os dados combinando essas operações.
  • 27. Operações de extração de dados Operações de conjuntos Nome do Produto Preço Unitário Melão 800 R$ Morango 150 R$ Maçã 120 R$ Limão 200 R$ Nome do Produto Preço Unitário Melão 800 R$ Morango 150 R$ Pinhão 100 R$ Caqui 350 R$ Tabela produto 1 Tabela produto 2
  • 28. Operações de extração de dados UNIÃO Nome do Produto Preço Unitário Melão 800 R$ Morango 150 R$ Maçã 120 R$ Limão 200 R$ Pinhão 100 R$ Caqui 350 R$ Maçã Limão Melão Morango Pinhão Caqui TABELA DE PRODUT 1 TABELA DE PRODUT 2
  • 29. Operações de extração de dados DIFERENÇA Nome do Produto Preço Unitário Maçã 120 G Limão 200 G Nome do Produto Preço Unitário Pinhão 100 G Caqui 350 G TABELA DE PRODUT 1 TABELA DE PRODUT 2 Maçã Limão Melão Morango Pinhão Caqui TABELA DE PRODUT 1 TABELA DE PRODUT 2 Maçã Limão Melão Morango Pinhão Caqui
  • 30. Operações de extração de dados INTERSECÇÃO Nome do Produto Preço Unitário Maçã 120 G Limão 200 G TABELA DE PRODUT 1 TABELA DE PRODUT 2 Maçã Limão Melão Morango Pinhão Caqui
  • 31. Operações de extração de dados PRODUTO CARTESIANO Código do Produto Nome do Produto Preço Unitário 101 Melão 800 G 102 Morango 150 G 103 Maçã 120 G Tabela de Produtos Cód. Dest. Export. Nome Dest. Export. 12 África 23 EUA 25 Argentina Tabela de Produtos 3 linhas
  • 32. Código do Produto Nome do Produto Preço Unitário Cód. Dest. Export. Nome Dest. Export. 101 Melão 800 G 101 África 101 Melão 800 G 101 África 101 Melão 800 G 101 África 102 Morango 150 G 102 EUA 102 Morango 150 G 102 EUA 102 Morango 150 G 102 EUA 103 Maçã 120 G 103 Argentina 103 Maçã 120 G 103 Argentina 103 Maçã 120 G 103 Argentina 3 x 3 = 9 linhas PRODUTO CARTESIANO
  • 33. Operações Relacionais PROJEÇÃO Projeção é uma operação que extrai colunas de uma tabela. Nome do Produto Melão Morango Maçã Limão Pense na projeção como extração “vertical”, como mostrado abaixo:” Nessa operação foi usada para extrair apenas os nomes de produtos incluídos na Tabela de Produtos.
  • 34. Operações Relacionais SELEÇÃO A operação de seleção extrai linhas de uma tabela. Nome do Produto Preço Unitário Maçã 120 G Limão 200 G Seleção ´como projeção, mas extrai linhas em vez de colunas. A seleção extrai dados “horizontalmente”.
  • 35. Operações Relacionais JUNÇÃO A operação de Junção(join) é muito poderosa. Ela literalmente refere-se à tarefa de juntar tabelas. Vamos examinar as tabelas abaixo como exemplo. Código do Produto Nome do Produto Preço Unitário 101 Melão 800 G 102 Morango 150 G 103 Maçã 120 G 104 Limão 200 G Tabela de Produtos Data Código do Produto Quantidade 1/11 102 1100 1/11 101 300 5/11 103 1700 8/11 101 500 Tabela de Vendas
  • 36. Data Código do Produto Nome do Produto Preço Unitário Quantidade 1/11 101 Melão 800 G 1100 1/11 102 Morango 150 G 300 5/11 103 Maçã 120 G 1700 8/11 104 Limão 200 G 500
  • 37. Operações Relacionais DIVISÃO Divisão é uma operação que extrai as linhas cujos valores de coluna correspondem àquelas na segunda tabela. Vamos ver um exemplo. Cód. Dest. Export. Nome Dest. Export. Data 12 África 5/3 12 África 10/3 23 EUA 5/3 25 Argentina 21/3 30 Portugal 25/3 Cód. Dest. Export. Nome Dest. Export. 12 África 23 EUA Tabela de Vendas Tabela de Destino de Exportação
  • 38. Dividir a Tabela de Vendas pela de Destino da Exportação resulta na tabela a seguir. Isso permite encontrar as datas quando as frutas foram exportadas tanto para o EUA quanto para a África. Data 5/3
  • 39. RESPONDER OS EXERCÍCIOS • Baixar e responder o exercício de Banco de Dados Relacional no Acadêmico. • Entregar na próxima aula.