Lbia Vinhas
Bancos de dados
sada
recupera
deposita
processamento e armazenamento
3
Bancos de Dados
4
Confiabilidade
Integridade
Segurana
Vises
Interface
Independncia de dados
Auto-descrio
Concorrncia
Alta performance
Modificar
Menu
Podemos escrever um
Imprimir
Menu
Estgio 1
Arquivo Menu
Nome Item
festa
Brigadeiro
Item
Menu
Preo Item
R$ 1.5
programa ir se tornar
muito complexo, com
muitas funes
Modificar
Menu
Imprimir
Menu
Modificar
Estoque
Arquivo Menu
Imprimir Rel.
Estoque
Arquivo
Estoque
Preo Menu
Estgio 2
Perda de integridade
Perda de independncia
Perda de segurana
Imprimir
Menu
Modificar
Estoque
Modificar
Estoque
Imprimir Rel.
Estoque
Modificar
Fornecedores
Fornecedores
Menu
Estoque
Preo
Menu
Estgio 3
Um SGBD oferece:
Programas de Aplicao/Consulta
SGBD (DBMS)
Usurios/Programadores
Dicionario Arquivos de
de dados
dados
Controle de acesso
Banco de Dados
nvel externo:
Externo
Externo
nvel conceitual:
conceitual
Fsico
Facilidade de manuteno
Externo
Externo
conceitual
Modelo de
Dados
As aplicao so construdas
sobre o nvel externo
Fsico
Modelos de dados
Abstrao de dados
Nvel fsico
Viso 1 - Cliente
Viso 2 - Caixa
Viso 3 - Gerente
Nvel lgico
Agencia(Num, Endereco)
Funcionario(Nome, Salario, Admiss.)
Nvel fsico
Modelagem conceitual
Modelagem lgica
Entidades
Relacionamentos
Atributos
Elipses: atributos
Losangos: relacionamentos
data
area_total
cpf
area_const
id
lote
possui
nome
proprietrio
Modelo E-R
Atributo identificador
data
area_total
cpf
area_const
id
lote
possui
nome
proprietrio
Modelo E-R
Cardinalidade:
data
area_total
cpf
area_const
id
lote
possui
nome
proprietrio
Modelo E-R
nome
num
1
1
possui
proprietrio
cadastro
Relao correta
Cadastro
Proprietario
cidade
Relao incorreta
Cadastro
Proprietario
01
00001 Pedro
01
00001 Pedro
02
00002 Paulo
02
00002 Paulo
03
00003 Katia
03
00003 Katia
04
Modelo E-R
area
num
area_const
id
n
lote
quadra
pertence
Relao correta
Lote
Quadra
Relao incorreta
Lote
Quadra
001
quad01
001
quad01
002
quad02
002
quad02
003
quad03
003
quad03
004
quad04
004
quad04
Modelo E-R
area_const
id
n
lote
nome
n
Faz fronteira
rua
Relao correta
Lote
Rua
001
Av. So Joo
002
003
Rua Imigrantes
004
Modelo E-R
contrato_compra_venda
composto
n
1
possui
n
1
cadastro
possui
lote
1
n
faz
fronteira
n
proprietrio
associado
n
banco
pertence
1
n
financiado
ruas
quadras
n
1
emprstimo
quadras
comerciais
quadras
residenciais
n
pago
pagamento
Conceitos:
Modelo OMT-G
Classes convencionais
Nome
Nome
Operaes
Classes georeferenciadas
Nome
OMT-G
CLASSE
OMT-G
CLASSE
CONVENCIONAL
CLASSE
GEORREFERENCIADA
GEO-CAMPO
REDE
TRIANGULAR
IRREGULAR
POLGONOS
ADJACENTES
TESSELAO
AMOSTRAGEM
GEO-OBJETO
ISOLINHAS
POLGONO
GEO-OBJETO C/
GEOMETRIA E
TOPOLOGIA
GEO-OBJETO COM
GEOMETRIA
PONTO
LINHA
LINHA UNIDIRECIONADA
LINHA BIDIRECIONADA
OMT-G
Classe Convencional
Classe Georreferenciada
Nome Classe
Nome
da Classe
Atributos Grficos
Nome da Classe
Atributos
Nome da classe
Operaes
Atributos
Representao
Simplificada
Operaes
Representao
Simplificada
OMT-G
Geo-campos:
Rede Triangular
Irregular
Nome
Isolinha
Nome
Polgonos
Adjacentes
Nome
Tesselao
Nome
Amostragem
Nome
Atributos Grficos
Atributos Grficos
Atributos Grficos
Atributos Grficos
Atributos Grficos
Atributos
Atributos
Atributos
Atributos
Atributos
Operaes
Operaes
Operaes
Operaes
Operaes
Ex: TIN
Ex: Curvas
de nvel
Ex: Diviso
de bairros
Ex: Imagem
Ex: Pontos
Cotados
OMT-G
Geo-objetos
PONTO
Nome
da Classe
Atributos Grficos
POLGONO
Nome
da Classe
Atributos Grficos
LINHA
BI-DIRECIONADA
Nome
da Classe
Nome
da Classe
Nome
da Classe
Atributos Grficos
Atributos Grficos
Atributos Grficos
Atributos
Atributos
Atributos
Atributos
Atributos
Atributos
Operaes
Operaes
Operaes
Operaes
Operaes
Operaes
Ex:Poo de Visita
Ex: Muro
Ex: rvore
Ex: Lote
OMT-G Relacionamentos
Associao simples
Relaes espaciais
Hierarquia espacial
Relacionamento em rede
OMT-G Relacionamentos
OMT-G Relacionamentos
Disjunto
Contm
Dentro
Iqual
Encontram
Cobre
Coberto por
Sobreposio
LINHA/
POLIGONO
LINHA/LINHA
Disjunto
Disjunto
Toca
Adjacente
Cruza
Perto de
Coincidente
Acima/Abaixo
Acima/Abaixo
Adjacente
Cruza
d
Atravessa
Entre
OMT-G
Em frente a
Paralelo a
Sobre
A, B
Toca
B
PONTO/
POLIGONO
LINHA/PONTO
Disjunto
Relacionamentos
espaciais
Disjunto
Adjacente/Toca
Toca/Adjacente
Perto de
Dentro de
A, B
Pero de
Perto de
Sobre
Dentro de
Acima/Abaixo
Acima/Abaixo
Em frente a
PONTO/PONTO
Disjunto
Adjacente/Toca
Perto de
Coincidente
A, B
Acima/Abaixo
Em frente a
OMT-G Generalizao
Nome da Classe
Nome da Subclasse
Nome da Subclasse
Notao p/ Generalizao
Lote
Edificado
Unid.Ambiental
No Edificado
Parques
Hachura = verde
Generalizao
Reservas
Hachura = amarela
Generalizao Espacial
SuperClasse
SubClasse
SuperClasse
SubClasse
SubClasse
SubClasse
Disjunto/Parcial
Sobreposta/Parcial
SuperClasse
SuperClasse
SubClasse
SubClasse
Disjunto/Total
SubClasse
SubClasse
Sobreposta/Total
sinalizao
Pt.nibus
Estacionam
Disjunto/
Parcial
Sobreposto/ Parcial
Escola
Pblica
Terminal
Particular
Disjunto/
Total
Indstria
Comrcio
Metro
Sobreposto/Total
nibus
OMT-G Agregao
Todo
Agregao
Parte
Todo
Parte
Quadra
Quadra
U
Lote
Subdiviso espacial
Lote
Unio espacial
Lote
C
Edificao
Contm
a)
Cemitrio
Placa
F
Cemitrio
Cemitrio
Sinalizao
Cadastro Placa
Indica uma
classe
Georreferenciada
Nome
da Classe
Cidade
Escola
intervalo escala
Atributos
Alterar forma
visualizao
E
Cidade
Cidade
E
Escola
rea da Escola
Escola
COD_MUNICPIO
Cdigo_med
Nome_med
Funo
rea
Cod_hospital
Hospital
n...n
Cod_hospital
Nome
End
Num_leitos ...
1
Dentro de
Bairros
1...n
1...n
1...n
COD_Bairro
Paciente
1...n
Descrio do Bairro
Cruza / Atravessa /
Dentro de
Nome_pac
CPF
Convnio
Med_resp
Cod_hospital
1...n
Pronturio
Cdigo_pronturio
CPF_Paciente
Doena
Data_entrada
Data_sada
1
Exames
Ruas
1...n
Hospital
DSC_NOME_Ruas
Dentro de
Cruza / Toca
Exame_pac
Cdigo_exame
Nome_exame
Tipo
Valor
Cod_hospital
1...n
Cdigo
CPF_paciente
Data_exame
Cod_exame
Exemplo
OMT-G:
Empresa
Cana
Acar
Modelo Geo-OMT - Empresa de Cana de Aucar
ESTADOS
C
U
1...*
MUNICPIO
COD_MUNICPIO
Contm
1
Dentro de
1...*
Cruza / Atravessa /
Dentro de
FAZENDA
COD_FZ
Descrio da Fazenda
Fazenda
Rodovias
1...*
DSC_NOME_Rod
Cod_FZ
rea_plantada
Tcnico_responsavel
1
Talho
1...*
COD_Talho
Descrio Talho
1...*
Produo
Talho
Ruas
1...*
DSC_NOME_RUA
Cruza / Toca
1...*
Cod_Talho
Cod_FZ
rea/Permetro
Tipo_solo
1...*
Cod_Talho
Cod_FZ
Safra
Especie
Data_plantio
Data_colheita
Produo
Preo
Modelo Relacional
50
Exemplos de relaes
Relao
Atributo
PROPRIETARIO
CPF
NOME
RUA
08940256
JOO DA SILVA
SAO JOAO
03727298
97260089
NUMERO
BAIRRO
180
CENTRO
1700
VILA 12
JOS DE SOUZA
35
CENTRO
SAO JOAO
Tupla
LOTE
NUMERO
PROPRIETARIO_CPF
AREA_TOTAL
AREA_CONST
00001
08940256
400.000
00003
03727298
150.000
75.00
00039
03727298
500.000
Conceito de Relao
Empregado
REG
NOME
IDADE
CARGO
SALARIO
Joo
34
Motorista
1020.30
Maria
35
Secretaria
1200.00
Joaquim
42
Gerente
2500.00
REG
NOME
IDADE
Inteiro
D1 = { x | x -5 e x 5 } ou
CARGO
D2 = { y | y 0 }
SALARIO
Real
Conceito de Relao
Esquema x Instncia
PROPRIETARIO
CPF
NOME
RUA
08940256
JOO DA SILVA
SAO JOAO
03727298
97260089
Esquema da
relao Proprietrio
NUMERO
BAIRRO
180
CENTRO
1700
VILA 12
JOS DE SOUZA
35
CENTRO
Instncia da
relao Proprietrio
SAO JOAO
Chave Primria
CIN_ID
NOME
SALA
CIN_ID
SALA_ID
FILME
TITULO
PROGRAMACAO
CIN_ID
GERENTE
ENDERECO
CAPACIDADE
DIRETOR
SALA_ID
TELEFONE
ANO
TITULO
PAIS
Simples
3D
Composta
Chave Estrangeira
Chave estrangeira
Curso
CURSOID
TITULO
DURAO
INFO
Informtica Indust.
BIO
Biologia
ENG
Engenharia Civil
MAT
Licenciatura Mat.
Aluno
MATRICULA
NOME
CURSO
a repetio de informaes
98765
Joo
MAT
67765
Jos
BIO
84562
Maria
ENG
34256
Luis
INFO
3452672
Ana
MAT
34529
Luana
MAT
lgebra Relacional
Operaes bsicas:
Operaes unrias:
Operaes binrias:
Seleo:
Clientes
Nome
Joo
Maria
Jos
Registro
1
2
3
Nome
Joo
Registro
1
Nome
Maria
Jos
Registro
2
3
Nome
Maria
Registro
2
Projeo:
Clientes
Nome
Joo
Maria
Jos
Registro
1
2
3
Nome
Joo
Maria
Jos
Unio:
ContaCorrente e Emprestimo
ContaCorrente
Nome
Conta
Joo
Maria
Jos
1
2
3
Emprestimo
Nome
Emprstimo
Paulo
Maria
Carlos
100
200
300
Resultado da unio
Nome
Joo
Maria
Jos
Paulo
Carlos
Diferena:
ContaCorrente
Nome
Joo
Maria
Jos
Resultado da diferena
Conta
Nome
Emprestimo
=
Nome
Emprstimo
1
2
3
Paulo
Maria
Carlos
100
200
300
Joo
Jos
Produto Cartesiano
Conta
1
2
3
Nomeemp
Maria
Maria
Maria
Emprstimo
200
200
200
Interseco
nome (ContaCorrente)
ContaCorrente
Nome
Conta
Joo
Maria
Jos
1
2
3
nome (Emprestimo)
Emprestimo
Nome Emprstimo
Paulo
Maria
Carlos
100
200
300
Resultado da
interseco
Nome
Maria
Operadores derivados
Juno
contacorrente.nome, emprestimo.emprestimo
( contacorrente.nome = emprestimo.nome (ContaCorrente X Emprestimo))
contacorrente.nome, emprestimo.emprestimo
(ContaCorrente
Emprestimo))
SQL
O que a SQL?
divida em:
Usado para
Tipo
select
Consultar dados
DML
DML
commit, rollback
Controlar transaes
DDL
DDL
(tabelas)
SQL - Bsico
Seleo
SELECT *
FROM solicitacao_compra
WHERE cod_func = func01
Projeo
SELECT cod_func
FROM solicitacao_compra
Produto Cartesiano
SELECT funcionarios.*, solicitacao_compra.*
FROM funcionarios INNER JOIN solicitacao_compra
ON funcionarios.cod_func = solicitacao_compra.cod_func
Modelos de SGBD
Rede
Hierrquico
Objeto
P-Id
Nome
Sobrenome
Cidade
Cidade
Populao
Renda
Lais
Costa
SJC
SJC
1000000
32244
Maria
Silva
SP
...
...
...
Relacional
Modelos de SGBD
P-Id
Nome
Sobrenome
Cidade
Cidade
Populao
Renda
Lais
Costa
SJC
SJC
1000000
32244
...
...
...
...
...
...
...
Relacional
Objeto-Relacional
Objeto
Modelagem
Mundo Real
Banco de Dados
Esquema
Planta
Instncia
Casas
Esquema x Instncia
Modelagem
Mundo
Real
Modelagem
Modelo Conceitual
Esquema Lgico
Derivao
Independe do SGBD
Depende do SGBD
Modelagem
Aplicao
Mundo Real
Aplicao
Aplicao
Esquema
Esquema
Esquema
Externo
Externo
Externo
Modelagem
Modelo Conceitual
Derivao
Esquema Lgico
Depende do
SGBD
Independe do SGBD
Estrutura Interna
Dados
Armazenados
Aplicao
Consulta
SQL
Interface
SQL
Banco de Dados
Resultado
Aplicao
Consulta
SQL
Interface
SQL
Resultado
Banco de Dados
Ex. Formulrio
Aplicao
Consulta
SQL
Interface
SQL
Resultado
Banco de Dados
Ex: Texto
Aplicao
Consulta
SQL
Interface
SQL
Resulta
do
Banco de Dados
Ex. SIG
Funcionalidades de um SIG:
Interface
Entrada e Integr.
Dados
Consulta e Anlise
Espacial
Visualizao
Plotagem
Gerncia Dados
Espaciais
BANCO DE DADOS
GEOGRFICO
diviso
poltica
elevao
hidrografia
Pas
PIB
Pop
Brasil
800
159
Argentina
300
34
Chile
45
14
Ambiente monousurio
Ambiente multiusurio
Compartilhamento de dados
Banco de Dados
Geogrfico
Arquitetura dual
SGBD relacional:
armazena dados
alfanumricos
SIG
SGBD
Dados
Alfanumricos
SGBD
Arquivos
Pas
PIB
Brasil
350
Uruguai
295
Arquitetura dual
SPRING
ArcView
IDRISI
2.
Transforme em coordenadas
3.
4.
Recupere o ID do objeto
associado a geometria
5.
6.
Arquitetura dual
Vantagens
Desvantagens
No h controle de integridade
Usurio corporativo
Perfil tpico
Requisitos
Ambiente multiusurio
SIG distribudo
Caractersticas
Ambiente Cliente-Servidor
servidor
Arquitetura integrada
SGBD
Dados alfanumricos
+
Dados espaciais
SGBD
Pas
PIB
Brasil
350
Uruguai
295
Aluno
MATRICULA
NOME
CURSOID
98765
Joo
MAT
67765
Jos
BIO
84562
Maria
ENG
34256
Luis
INFO
3452672
Ana
MAT
34529
Luana
MAT
Curso
CURSOID
TITULO
DURAO
INFO
Informtica Indust.
BIO
Biologia
ENG
Engenharia Civil
MAT
Licenciatura Mat.
1,5
5,5
1,1
5,1
Pol1
id
num_coords
num_holes
pol1
pol2
12
Pts_pol
Pontos
id
pt
id
pol1
pol1
pol1
pol1
pol1
1,5
5,5
Tipo BLOB: uma sequncia de bytes
sem significado para o SGBD
1,1
5,1
Pol1
Polgonos
id
num_coords
num_holes
poligono
pol1
pol2
12
Vantagens
Desvantagens
Extenso espacial
Exemplos:
Comerciais
Oracle Spatial
Livres de licena
PostGIS
SGBD
Camada de Acesso
Bibliotecas de funes
Camada de acesso
TerraView
Cliente-Servidor
106
TerraLib, ArcSDE
Interface
Interface
Banco de Dados
Exemplos TerraView/TerraLib
Banco de dados
Interface
Access
Camada de acesso
Camada de Acesso
TerraLib
Banco de Dados
Interface
107
TerraView
Banco de dados
Interface
ORACLE
Camada de acesso
Camada de Acesso
Interface
108
109
Apontamento
Identificao
Atributos
110
Linguagem natural:
Selecione todos os atributos das quadras que possuem renda
maior que 10000
SQL:
SELECT * FROM QUADRAS WHERE RENDA > 100000
Quadras
111
ID
RENDA
NESCOLAS
POP
1000
10
1K
Fazendas
id
22
SELECT id
FROM fazendas
WHERE area > 2500
112
label
rea
numcad
Carabas
3000
2345
113
Operadores relacionais:
> (maior)
< (menor)
= (igual)
Ex. A = A : V e A = B : F
(diferente)
like (similar)
Tabela verdade da
operao OR (OU)
114
Tabela verdade da
operao AND (E)
Op1
Op2
Resultado
Op1
Op2
Resultado
Linguagem natural:
Selecione todas as quadras que possuem renda maior que 10000 e
mais de 10 escolas
SQL:
SELECT * FROM QUADRAS WHERE RENDA > 100000 AND NESCOLAS > 10
115
label
rea
numcad
Carabas
3000
2345
Cadastro
SELECT id
FROM fazendas, cadastro
WHERE fazendas.numcad =
cadastro.numcad
AND ITR > 4500
116
numcad
2345
ITR
Produo
5000
4000
117
Relaes Espaciais
A
Relaes mtricas
A
1 Km
Relaes Topolgicas
Relaes Topolgicas
b(A) b(B)
b(A) i(B)
i(A) b(B)
i(A) i(B)
A toca B
disjunto
toca
contm
cobre
dentro
coberto por
igual
intercepta
Relacionamentos topolgicos
1
1
2
(a)
(b)
(d)
(e)
(c)
2
1
P
(g)
(f)
1
(h)
(i)
123
Relacionamentos Topolgicos
P1
124
P2
Relacionamentos Topolgicos
cruza
cruza
1
2
cruza
2
1
(a)
sobrepe
(b)
sobrepe
sobrepe
2
(c)
disjunto
(f)
disjunto
P1
125
(e)
disjunto
(g)
2
2
(d)
(h)
P2
(i)
Controle de apresentao
Vizinhos do Equador
sem contexto
126
com contexto