Anda di halaman 1dari 38

BC0005

Bases Computacionais da
Cincia
Aula 04
Noes de Banco de Dados
(Base de Dados)

Santo Andr, junho de 2010

Roteiro da Aula
PARTE I Parte Terica
Definies e conceitos bsicos
Modelo Relacional
Consultas

PARTE II Parte Prtica


Uso do programa BrOffice Base

Planilhas
So constitudas de TABELAS simples,
simples sendo teis para
organizar dados, fazer clculos com esses dados e
apresentar grficos.
Mas elas possuem desvantagens:
 Falta de recursos para manipulao de grandes quantidades de
variveis e tabelas com dados relacionados entre si
 Demora na busca de informao, devendo-se
devendo
procurar um dado
especfico em todas as linhas de todas as tabelas e, por vezes,
devendo-se
se cruzar dados entre tabelas para se obter a
informao desejada.
 Dificuldade de desenvolver aplicaes para entrada e
apresentao dos dados. Ou seja, o usurio do programa deve
digitar manualmente as informaes nas tabelas.
3

Planilhas (Cont.)

E, ainda, outras desvantagens:


 Dificuldade de garantir integridade e segurana dos dados uma
vez que clulas desbloqueadas podem ser acessadas por qualquer
usurio
 Dificuldade de desenvolver ambiente para acesso simultneo de
vrios usurios mesma base de dados

DA a necessidade de um software especializado!

Aplicaes:
Identificao de Pessoas
 Quando algum pede visto de entrada nos EUA,
um funcionrio cadastra sua impresso digital e foto.
 Essas informaes so armazenadas em grandes
bancos de dados de imagens.
 Toda vez que algum solicita o visto, sua foto e impresso digital so
comparadas com outras presentes em outros bancos de dados,
de pessoas procuradas pela justia norte americana.
 O resultado dessas comparaes deve ser fornecido em poucos segundos.
 Os bancos de dados de pessoas procuradas pela justia dos EUA contm
milhares de registros e eles so atualizados a todo momento.
 Milhares de vistos so solicitados diariamente.

Ser que uma planilha daria conta dessa tarefa? (No.)


5

Aplicaes:
Seqncias de DNA
 O DNA humano tem aproximadamente 3 bilhes de bases.
O
O DNA de dezenas de espcies j foi seqenciado.
O
O FBI e Polcia Britnica mantm informaes genticas de
milhes de pessoas.
 Milhares de pesquisadores acessam (consultando e
atualizando) simultaneamente este tipo de informaes.

Ser que uma planilha tem recursos que permitam a


realizao desse servio?
6

Como implementar um
Banco de Dados?
Resp.: preciso, primeiro, fazer o seu planejamento!
1 Conhecer o problema:
- Quais dados sero armazenados?
armazenados
- Quais informaes os usurios devem acessar?
- Quais tarefas devem ser automatizadas?
2 Escolher o software:
- Qual Sistema de Gerenciamento de Bases de Dados (SGBD)?
(
BrOffice Base.
- Quais modelos de dados ele suporta?
Modelo relacional.

Bases de Dados
Conceitos Bsicos
 Dados = elementos de interesse coletados
(nmeros, caracteres, imagens etc.)
 Banco de Dados (BD) = coleo de dados
potencialmente muito grande e lo
logicamente relacionados (integrados)
 Sistema Gerenciador de Bancos de Dados (SGBD) =
software
software de propsito geral
facilita a definio, a criao e a manipulao do BD
 Exs.: Access, DB2, Oracle, BrOfficeBase, etc.
Sistema de Banco de Dados (SBD) = BD + SGBD + programas
aplicativos
 Exs.: Sistemas de BD Genmicos, Sistemas bancrios,
telefnicos etc.
8

Sistema de Banco de Dados (SBD)


Usurios/Programadores
SBD
Consulta/Programas de Aplicaes
SGBD
Software p/ processar consultas/programas
Software p/ acessar o banco de dados

Banco de Dados
Objetivos: armazenar e recuperar informaes
com segurana, eficincia e flexibilidade

Modelo Relacional

Os dados esto organizados nos bancos de dados


de forma lgica.
Eles esto relacionados..

Modelo Relacional:
Exemplo de Relao
Grau = 4

Tabela: Relao, conjunto de tuplas.


Colunas: Atributos, determinam o grau
Linhas: Tuplas, determinam a cardinalidade
Campos: Valores do atributo

Cardinalidade = 4

Modelo Relacional:
Conceitos bsicos
BD relacional = conjunto de relaes
Esquema de uma relao: Especifica o nome da
relao, e o nome e tipo dos atributos.
Ex.: Alunos: Nome (string), idade (integer),
mdia (real).
Esquema do banco de dados: Conjunto de
esquemas das relaes mantidas no BD.

Modelo Relacional:
Conceitos bsicos
Chave primria:
Campo que identifica um registro como nico
na tabela
Os valores no podem se repetir
Estes campos no podem ficar em branco

Chave primria

Cdigo
Cdigo

Nome

Endereo

Telefone

Joo da Silva

Av. Mauro
Ramos, 200

234-1232

Pedro Santos

Rua Lauro
Linhares, 152

334-4567

Modelo Relacional: Conceitos bsicos


Chave estrangeira - Um atributo usado para referenciar
entidades de outras tabelas. Possui valores da chave
primria da tabela referenciada.
Vo chave-primria
de Tabela de Vos
Cia Chave-estrangeira

Cdigo chave-primria de Tabela de Cias Areas

Modelo Relacional:
Entidades e Ocorrncias
Entidade: Conjunto de ocorrncias (Funcionrios)
Ocorrncia: Objeto particular da entidade (uma
tupla de uma relao, relativa a um funcionrio).
FUNCIONRIOS
Matrcula Nome

Data Admisso

4456

Joo Carlos da Silva

29/04/91

6689

Slvia de Oliveira

30/02/92

1203

Carla Martinez

14/04/92

Modelo Relacional
Relaes
Relao: Conjunto de associaes entre entidades.
DEPARTAMENTO

LOTAO

EMPREGADO

Entidade PESSOA: Um conjunto de objetos classificados


como pessoa.
Entidade DEPARTAMENTO:
DEPARTAMENTO Um conjunto de objetos
classificados como departamento.
Relao LOTAO: Um conjunto de ASSOCIAES,
cada uma ligando um departamento a uma pessoa.

Modelo Relacional:
Relao e Cardinalidade
DEPARTAMENTO

EMPREGADO

LOTAO

Uma ocorrncia de
departamento pode
estar associada a
vrias (n) ocorrncias de
empregado.
Departamento tem
cardinalidade mxima n
no relacionamento Lotao)

Uma ocorrncia de
empregado pode estar
associada a no mximo
uma (1) ocorrncia de
departamento.
Empregado tem
cardinalidade mxima 1
no relacionamento Lotao

Bancos de Dados
Consultas

Bancos de dados s so teis se pudermos realizar


buscas nos dados armazenados.
A busca por informaes especficas no banco de dados
denominada consulta.

Bancos de Dados
Consultas
Buscar informaes em um genoma hipottico:
Gene

Categoria

Funo

Seqncia

AAC15

Funo Molecular

Quebra de protenas
prote

AGTTAGAC...

BAD17

Componente Celular

Membrana

GATACA...

ENV7

Fun o Molecular
Funo

Liga o de protenas
Ligao
prote nas

GCCACT...

DIB21

Processo Biolgico

Metabolismo dos Carboidratos

ATGCAATG...

HSE13

Processo Biolgico

Ciclo celular

CGAAGT...

IFI10

Processo Biolgico

Ciclo celular

AGTTGGA...

Busca:
Nome e seqncia dos genes que atuam no ciclo celular
Se um dado gene tem funo molecular
Qual gene possui a seqncia GATACA...
GATACA e para que ele serve

Parte
Prtica

Bases de Dados
Planejamento e Construo
Tarefa
Construa uma base de dados para um consultrio mdico.
mdico
Por exemplo:
A secretria de um mdico anota os dados e informaes das
consultas dos pacientes numa agenda.
Atualmente, o servio manual.
Deseja-se
se um programa para
- Armazenar dados dos pacientes e das consultas
- Listar as consultas marcadas
- Automatizar a entrada dos dados

Fases do Planejamento
1 Definio dos Dados
H duas CATEGORIAS de dados:
Dados dos Pacientes TABELA PACIENTES (TPacientes)
Campos: Nome, Telefone, Peso, Altura
Dados das Consultas TABELA CONSULTAS (TConsMed)
Campos: Data, Hora, Minuto

Fases do Planejamento
2 Refinamento dos Campos
Juntar ou separar TABELAS
Eliminar campos desnecessrios
Criar campos adicionais
Definir campo Chave
O exemplo fica assim:
TPacientes:
CodPac,
CodPac, Nome, Sobrenome, Telefone, Altura, Peso
TConsMed:
CodCons,
CodCons, Data, Hora

Fases do Planejamento
3 Tipos de Dados e Tamanho dos Campos
No exemplo:
Nome, Sobrenome = tipo texto, 50 caracteres
Peso, Altura = tipo decimal, 10 dgitos
CodPac, CodCons = tipo inteiro, numerao automtica
Data = tipo data
Hora = tipo hora

Fases do Projeto do BD
4 Relaes entre as Tabelas
Relao 1:n (um para muitos)

No exemplo,
cada paciente pode ter vrias (n) consultas
e
cada consulta envolve um nico (1) paciente

Necessrio: incluir campo CodPac na TConsMed


e
estabelecer o relacionamento entre
CodPac (na TPacientes) <--> CodPac (na TConsMed)
5 Definir os Formulrios e
6 as Consultas necessrias (detalhado nos passos a seguir.)

Passos no BrOffice Base


1 Abrir o programa. (Iniciar >> BrOffice >> BrOffice.org Base)
2 Criar um banco de dados vazio
io, preencha as janelas do Assistente
de Bancos de Dados.
Na 1a. janela, assinale:

e pressione Prximo.
Na 2a. janela, faa as opes:

e pressione Concluir.
Na 3a. janela, salvar como BDaula4.

Passos no BrOffice Base


3 Criar uma tabela:
Na janela principal do Base, clique em Tabelas e escolha Criar
tabela na exibio de design:
design

Preencha a Janela de desenho de tabelas exibida:

Nome, Sobrenome: <Entrada Obrigatria>: Sim | <Tamanho>: 50


Telefone: <Entrada Obrigatria>: No | <Tamanho>: 10
Peso, Altura: <Tamanho>: 10 | <Decimais>: 2
CodPac: <Auto Valor>: Sim

Passos no BrOffice Base


Na primeira coluna da linha CodPac,
CodPac clique com o boto
direito do mouse e defina CodPac como Chave Primria.

Salvar essa tabela sob o nome TPacientes


Feche a janela de desenho de tabela, voltando para a janela
principal

Passos no BrOffice Base


Criar a TABELA DAS CONSULTAS MDICAS
conforme especificado abaixo

Data: <Entrada Obrigatria>: Sim


Hora: <Entrada Obrigatria>: Sim | <Formato>: HH:MM
CodCons: <Auto Valor>: Sim
CodPac: <Auto Valor>
>: No | <Entrada Obrigatria>: Sim

Salvar a tabela como TConsMed

Feche a janela de desenho de tabela,


tab
voltando para a janela principal.
(Caso queira voltar a fazer alteraes na tabela, basta clicar com o
boto direito do mouse em TConsMed e escolher <Editar>.)

Passos
no
BrOffice
Base
4 Criar o relacionamento:
Na janela principal, menu: <Ferramentas> | <Relaes>
Aparece a janela de projeto de relacionamentos
- Selecione TPacientes e clique em [Adicionar]
- Selecione TConsMed e clique em [Adicionar]
- Clique em [Fechar]
- Clique no campo CodPac (da TPacientes) e arraste at o
campo de mesmo nome na TConsMed

Aparece o relacionamento
1:n

Salvar e fechar a janela de projeto de relacionamentos

Passos no BrOffice Base


5 Criar um formulrio:
Na janela principal do Base, clique em Formulrios
e escolha Usar assistente para criar formulrio

Passos no BrOffice Base


Escolher TPacientes,
incluir todos os campos

e Avanar ...

Passos no BrOffice Base


Escolher Adicionar sub-formulrio
formulrio,
Sub-formulrio
formulrio baseado em relao existente

e Avanar ...

Passos no BrOffice Base


Incluir todos os campos

e Concluir.
Fechar a janela que aparece, voltando janela principal.
Abrir o formulrio criado e entrar com alguns dados.

Passos no BrOffice Base


6 Criar uma consulta seguindo os passos:

Consultas | Criar consulta na exibio de design


Selecione e adicionar a tabela desejada
Preencher as clulas da planilha com informaes
sobre o que deseja encontrar.
Salvar a consulta.
Clicar duas vezes na consulta.

Consultas com SQL


(tpico avanado, opcional)
A linguagem SQL (Structured Query Language)
Comandos em linha:

Selecione todos os campos da Tabela1


SELECT * FROM Tabela1

Todos os funcionrios do departamento de compras:


SELECT * FROM Tabela1 WHERE Departamento='Compras'

Consultas com SQL


A sintaxe bastante intuitiva
Linguagem simples e estruturada

mais rpido escrever uma consulta em SQL do que selecionar


campos e valores de tabelas
Quem tem prtica escreve as consultas em poucos segundos
Comandos SQL podem ser inclu
ludos em programas de computador
Uma pgina na internet que permite consultar os lbuns do Queen
Consultas mais complexas podem ser realizadas
Consultas podem envolver mltiplas tabelas
Funciona em qualquer programa Gerenciador de Bancos de Dados
OpenOffice Base, MySQL, SQL Server, Oracle, HSQLBD etc.

Exerccio 1 (para Casa)


a) Crie uma base de dados com informaes sobre pelo
menos 10 livros da sua casa (nome, autor, etc.)
b) Crie um cadastro para os membros (pelo menos 4) da sua
casa (nome, data de nascimento, etc).
c) Considere que um quarto dos membros pegou
emprestado um livro e um outro quarto pegou
emprestado dois livros.
d) Crie consultas para saber (1) se um certo membro est
com livros e se for, quais livros, quando foram
emprestados e quando devem ser devolvidos; (2) com
quem est um certo livro que est ausente da prateleira
e quando ele deve ser devolvido.

Anda mungkin juga menyukai