Você está na página 1de 37

Introduo a Banco de Dados

Aula de Autoria do Prof. Roberto Willrich INE/CTC/UFSC Universidade Federal de Santa Catarina Adaptada por Maromo

Introduo

Sistema de banco de dados


Projetados para gerenciar grandes quantidades de informao Proporcionar ao usurio uma viso abstrata dos dados
sistema esconde certos detalhes de como os dados so armazenados ou mantidos

Gerenciador do banco de dados

Sistema de Gerenciamento de Bancos de Dados SGBD (Database Management System DBMS)


Banco de Dados (BD) = Coleo de dados interrelacionados DBMS = Mdulo que proporciona a interface entre dados armazenados no banco de dados e os programas de aplicao e consultas submetidas ao sistema
retirar e armazenar informaes no BD

Gerenciador do banco de dados

Gerenciamento de banco de dados envolve


definio de estruturas para o armazenamento da informao proviso de mecanismos para a manipulao da informao Segurana das informaes armazenadas
a despeito de quedas do sistema ou tentativa de acesso no autorizado

Garantia da integridade e Controle de concorrncia


se dados forem compartilhados por usurios diversos, o sistema deve impedir possveis resultados anmalos

Objetivos dos Sistemas de BD

Exemplo (sem uso de BD)


Empresa bancria de poupana
mantm informaes de clientes e contas
em arquivos permanentes do sistema

contm programas que permitem a manipulao dos dados


programa para creditar ou debitar uma conta programa para acrescentar nova conta programa para recuperar o saldo programa para gerar extratos

Objetivos dos Sistemas de BD

Exemplo
programas escritos em respostas s necessidades
novos programas so adicionados na medida em que as necessidades aparecem podem ser criados novos arquivos permanentes

como podem ser programadores diferentes


arquivos podem ser de formatos diferentes linguagens de programao podem ser diferentes

isto um sistema de processamento de arquivos


suportado por um S.O. convencional registros permanentes so armazenados em vrios arquivos

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Redundncia de dados e inconsistncia
uma vez que os arquivos e programas so criados por diferentes programadores
mesma informao pode estar duplicada em diversos arquivos (ex. endereo do cliente) leva a maior custo de armazenamento leva a potencial inconsistncia de dados

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Dificuldade do acesso a dados
exemplo: saber o nome dos clientes com CEP 88040 usualmente no h um programa especfico
teria que manualmente selecionar na lista de clientes ou solicitar a criao de um programa no interessante pois novas condies podem surguir

no permite retirar dados de maneira eficaz e conveniente

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Isolamento dos dados
dados so espalhados em vrios arquivos de diferentes formatos difcil escrever novos programas para retirada conveniente dos dados

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Mltiplos usurios
pode resultar em dados inconsistente
considere uma conta com R$ 500,00 se dois clientes fazem um saque ao mesmo tempo (R$ 50,00 e 100,00) pode levar a um saldo inconsistente (450 ou 400)

superviso deve ser mantida no sistema

10

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Problemas de segurana
nem todo usurio deve ser autorizado a acessar todos os dados
caixa deveria acessar dados dos correntistas departamento pessoal deveria acessar os dados dos funcionrios

como os programas so adicionados ao sistema de forma imprica


difcil garantir segurana

11

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Problemas de integridade
valores armazenados devem satisfazer certos tipos de restries de consistncia
exemplo: saldo de uma conta nunca deve estar abaixo de um valor pr-especificado

restries devem ser garantidas pelo sistema


pode ser conseguida colocando cdigo apropriado nos diversos programas

mas quando novas restries so inseridas


fica difcil alterar os programas para garanti-la mais complicado se restries envolvem diversos dados de diferentes arquivos

12

Objetivos dos Sistemas de BD

Desvantagens do sistema de processamento de arquivo


Conduziu ao desenvolvimento de sistemas gerenciadores de banco de dados

13

Abstrao dos Dados

Sistema de Gerenciamento de BD
BD = Coleo de arquivos inter-relacionados SGBD = Programas permitindo acessar e modificar arquivos

Propsito central do sistema


Ser eficiente
leva a concepo de estruturas de dados complexas para representar os dados no BD

Fornecer uma viso abstrata dos dados


escondendo detalhes de como dados so armazenados e mantidos

14

Abstrao dos Dados

Nvel Fsico
nvel mais baixo de abstrao se descreve como os dados so armazenados
estruturas complexas de baixo nvel so descritas em detalhe

15

Abstrao dos Dados

Analogia com os tipo de dados Registro do Pascal


registro do cliente
type cliente = record nome : string; rua : string; cidade: string; end;

outros registros:
conta, com campos nmero e saldo; empregado, com campo nome e salrio; ...

16

Abstrao dos Dados

Analogia com os tipo de dados Registro do Pascal


nvel fsico
registro de cliente, conta ou empregado pode ser descrito como um bloco de endereos de memria consecutivos (palavras ou bytes)

17

Abstrao dos Dados

Nvel Conceitual
nvel intermedirio de abstrao descreve quais dados so armazenados no BD e quais relacionamentos existem entre os dados descreve inteiramente o BD com um pequeno nmero de estruturas relativamente simples
que podem refletir em estruturas complexas no nvel fsico

usados pelos administradores do banco de dados


que devem decidir qual informao deve ser mantida no BD

18

Abstrao dos Dados

Nvel Viso
nvel conceitual utiliza estruturas mais simples
mas h ainda um tipo de complexidade resultante do grande tamanho do BD muitos usurios no esto preocupados com toda esta informao
necessitam apenas uma parte do BD

19

Abstrao dos Dados

Nvel Viso
nvel mais alto de abstrao
se expe apenas parte do BD

podem ser providas diferentes vises para um mesmo banco de dados


pessoa que necessita preparar os cheques de pagamento
pode somente ver parte do BD que possui a informao acerca dos funcionrios do banco

caixas
pode somente ver parte do BD que possui a informao acerca dos clientes do banco

20

Modelo de Dados

Descreve a estrutura de um banco de dados


uma coleo de ferramentas conceituais para descrever
dados, relacionamentos de dados, semntica dos dados, e restries dos dados

21

Modelo de Dados

Tipos de modelos de dados


Modelos lgicos baseado em objetos Modelos lgicos baseado em registros Modelos de dados fsico

22

Modelos lgicos baseado em objetos

Usados na descrio dos dados no nveis conceitual e viso


proporcionam ampla e flexvel capacidade de estruturao permitem especificar restries de dados de forma explcita

Existem dezenas de modelos


modelo entidade-relacionamento modelo binrio modelo de semntica de dados modelo infolgico

23

Modelo Entidade-Relacionamento

Entidade
objeto que existe e distinguvel de outros
distino conseguida associando-se a cada entidade atributos que descrevem o objeto
nmero e saldo descrevem uma conta bancria

Relacionamento
uma associao entre vrias entidades
relacionamento ClienteConta associa um cliente com cada conta que possua

24

Modelo Entidade-Relacionamento

Restries
modelo E-R representa certas restries s quais o contedo do BD deve-se adequar uma restrio importante o mapeamento de cardinalidades
expressa o nmero de entidades s quais outra entidade pode ser associada via um conjunto de relacionamentos tipos
um-para-um um-para-muitos muitos-para-um muitos-para-muitos

25

Modelo Entidade-Relacionamento

Relacionamento
um-para-um
uma entidade em A est associada com no mximo uma entidade em B, e uma entidade em B est associada com no mximo uma entidade em A

a1 a2 a3 a4

b1 b2 b3 b4

B
26

Modelo Entidade-Relacionamento

Relacionamento
um-para-muitos
uma entidade em A est associada a qualquer nmero de entidades em B uma entidade em B pode estar associada a no mximo uma entidade em A

b1
a1 a2 a3 b2 b3 b4 b5

B
27

Modelo Entidade-Relacionamento

Relacionamento
Muitos-para-um
uma entidade em A est associada a no mximo uma entidade em B uma entidade em B pode estar associada a qualquer nmero de entidades em A

a1 a2 a3 a4 a5 A B
28

b1 b2 b3

Modelo Entidade-Relacionamento

Relacionamento
Muitos-para-muitos
uma entidade em A est associada a qualquer nmero de entidades em B uma entidade em B est associada a qualquer nmero de entidades em A

a1 a2 a3 a4

b1 b2 b3 b4

B
29

Modelo Entidade-Relacionamento

Estrutura lgica global de um BD


pode ser expressa graficamente por um diagrama E-R
Retngulos, que representam conjuntos de entidades Elipses, que representam atributos Losangos, que representam relacionamentos entre conjuntos de entidades Linhas, que ligam atributos a conjuntos de entidades e conjuntos de entidades a relacionamentos.

30

Modelo Entidade-Relacionamento

Estrutura lgica global de um BD


parte de um banco de dados de sistema bancrio, composto de clientes e suas contas

atributo

rua

entidade

nmero nome cidade

saldo

cliente

ClienteConta

conta
relacionamento muitos-para-muitos um-para-muitos um-para-um

31

Modelo Entidade-Relacionamento
CGC/CPF Estado Bairro CodPed Endereco 1 Nome CodCli Tel Resid Tel Comer CodProd Descrio Preo Unitrio Quantidade
32

CodCli Data Vendedor N Pedidos 1

Clientes

Cidade N CodPed CodProd

Produtos

Item N

Modelos lgicos baseado em registros

Usados na descrio dos dados no nveis conceitual e viso


uma descrio em alto nvel da implementao no fornecem facilidades para especificar explicitamente restries de dados

Modelos de dados mais aceitos


Modelo Relacional - Trataremos Modelo de Rede Modelo Hierrquico

33

Modelos lgicos baseado em registros

Modelo relacional
Dados e os relacionamentos entre os dados so representados por uma coleo de tabelas
com um nmero de colunas e nomes nicos

nome Pedro

rua Av. 2

cidade Fpolis

Nconta 1452

Nconta 1452

saldo 2452.25

Joo
Tiago Marcos Arthur

R. 51
Largo 2 Av. 43 Rua 23

S.Jos
Fpolis Bigua Fpolis

521
53256 53256 14532

521
53256 4651 14532

6565.74
465.52 456.25 8767.02
34

Linguagem de Definio de Dados

Esquema de BD
especificado por um conjunto de definies que so expressas em uma linguagem especial
chamada linguagem de definio de dados (DDL) resultado de uma compilao de instrues DDL um conjunto de tabelas tabelas so armazenadas no arquivo dicionrio (diretrio) de dados
contm metadados que so dados acerca dos dados

35

Linguagem de Manipulao de Dados

Manipulao de dados
recuperao da informao armazenada no BD insero de novas informaes no BD remoo de informaes do BD

Linguagem de manipulao de dados (DML)


permite aos usurios acessar manipular dados organizados por um modelo de dados

36

Linguagem de Manipulao de Dados

Query
um pedido de consulta de informao parte de uma DML que envolve consulta a informao chamada de linguagem de consulta linguagem de consulta mais usada SQL (Structured Query Language)

37

Você também pode gostar