introdução a banco de dados aula 02 prof. silvestri

22
Introdução a Introdução a Banco de Dados Banco de Dados Aula 02 Aula 02 Prof. Silvestri www.eduardosilvestri.com .br

Upload: internet

Post on 18-Apr-2015

113 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Introdução a Introdução a Banco de DadosBanco de Dados

Aula 02Aula 02

Introdução a Introdução a Banco de DadosBanco de Dados

Aula 02Aula 02

Prof. Silvestriwww.eduardosilvestri.com.br

Page 2: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Modelos de DadosModelos de Dados

Page 3: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Tipos de Banco de Dados.Tipos de Banco de Dados.

Atualmente existem diversos Banco de Dados no mercado, tais como Oracle, SQL Server, MySQL, Sybase, Jasmine, ZIM, DB2, PostGree etc. Cada um tem suas características próprias o que os tornam vantajosos ou não para determinados tipos de aplicação. Mas esses bancos de dados são classificados segundo a forma que os dados podem ser armazenados e posteriormente acessados. Dentre os principais tipos de classificações banco de dados temos:

Page 4: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados Orientado a Banco de Dados Orientado a ObjetosObjetos

Representam os dados como coleções que obedecem propriedades. São modelos geralmente conceituais dispondo de pouquíssimas aplicações reais. Cada objeto tem características próprias (atributos) com ações próprias (métodos).

Page 5: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados Orientado a Banco de Dados Orientado a ObjetosObjetosNeste Modelo, por exemplo, não seria interessante a existência de uma tabela de funcionários e dentro dela alguma referência para cada registro, de forma a podermos saber onde (em que departamento) o funcionário está trabalhando. Um conjunto de regras disponibilizaria em separado os funcionários da fábrica que, no entanto estariam agrupados aos demais, para o sistema de folha de pagamento.

Page 6: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados Orientado a Banco de Dados Orientado a ObjetosObjetos

Page 7: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

O Modelo de Dados relacional representa os dados contidos em um Banco de Dados através de relações. Estas relações contêm informações sobre as entidades representadas e seus relacionamentos. O Modelo Relacional é claramente baseado no conceito de matrizes, onde as chamadas linhas (das matrizes) seriam os registros e as colunas (das matrizes) seriam os campos. Os nomes das tabelas e dos campos sãode fundamental importância para nossa compreensão entre o que estamos armazenando, onde estamos armazenando e qual a relação existente entre os dados armazenados..

Page 8: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

Cada linha de nossa relação será chamada de TUPLA e cada coluna de nossa relação será chamada de ATRIBUTO. O conjunto de valores que um determinado atributo pode assumir é intitulado de DOMÍNIO.O domínio consiste de um grupo de valores a partir dos quais um ou mais atributos retiram seus valores reais. Assim sendo Rio de Janeiro, Paraná e Pará são estados válidos para o Brasil, enquanto que Corrientes não é um estado válido (pertence a Argentina e não ao Brasil).

Page 9: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

As relações não podem ser duplicadas (não podem existir dois estados do Pará, no conjunto de estados brasileiros, por exemplo), a ordem de entrada de dados no Banco de Dados não deverá ter qualquer importância para as relações.

Page 10: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

Chamaremos de Chave Primária ao Atributo que definir um registro, dentre uma coleção de registros. Chamaremos de Chave Composta, aquela chave que contém mais de um atributo (Por exemplo um cadastro ordenado alfabeticamente por Estado, Cidade e Nome do Cliente, necessitaria de uma chave composta que contivesse estes três atributos).

Chamaremos de Chave Estrangeira, aquela chave quepermitir a ligação lógica entre uma tabela (onde ela se encontra) com outra na qual ele é chave primária.

Page 11: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

Exemplo:

Cidade Estado@ CidCodi @ EstCodiCidNome EstNome# EstCodi

Page 12: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

CidCodi e EstCodi, são chaves primárias respectivamente das tabelas Cidade e Estado, enquanto EstCodi é chave estrangeira na tabela de cidades. É precisamente por este campo (atributo, ou coluna), que será estabelecida a relação entre as tabelas Cidade-->Estados.

Page 13: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

Resumidamente podemos dizer que um Banco de dados relacional:• Contém uma quantidade qualquer de tabelas;• Os dados existentes em uma tabela nunca deveriam aparecer em outra;• Um Banco de Dados projetado corretamente contém todos os vínculos necessários para permitir que registros sejam relacionados entre tabelas diferentes;• Tabelas podem ser relacionadas;

Page 14: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

• A integridade referencial deve ser mantida (Integridade Referencial é a existência de um valor ou atributo relacionado em um banco de dados dependendo de um outro valor ou atributo.);• Em geral as entidades do DED serão as tabelas de um banco de dados relacional;• Chave Primária (@) é um campo ou conjunto de campos que identifica um registro ou uma tupla;• Chave Estrangeira (#) é o campo que serve para relacionar as tabelas.

Page 15: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Banco de Dados RelacionalBanco de Dados Relacional

S# Nome Status Cidade

S1 Smith 20 Londres

S2 Jones 10 Paris

S3 Blake 30 São Paulo

S4 Clark 20 Atenas

S5 Adams 30 Londres

P# Nome Cor Peso

P1 Porca Azul 10

P2 Trinco Preto 8

P3 Parafuso Preto 15

P4 Parafuso Verde 17

P5 Prego Verm 12

Fornecedores (S)

Peças (P)

P# S# QTD

P1 S1 200

P2 S1 240

P3 S1 200

P2 S2 150

P2 S3 120

P3 S3 100

P4 S5 150

P5 S2 350

Fornecimentos (SP)

Page 16: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Arquiteturas de BD.Arquiteturas de BD.

Atualmente, devem-se considerar alguns aspectos relevantes para atingir a eficiência e a eficácia dos sistemas informatizados desenvolvidos, a fim de atender seus usuários nos mais variados domínios de aplicação: automação de escritórios, sistemas de apoio a decisões, controle de reserva de recursos, controle e planejamento de produção, alocação e estoque de recursos, entre outros. Tais aspectos são:

Page 17: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Arquiteturas de BD.Arquiteturas de BD.

a) Os projetos Lógico e Funcional do Banco de Dados devem ser capazes de prever o volume de informações armazenadas a curto, médio e longo prazo. Os projetos devem ter uma grande capacidade de adaptação para os três casos mencionados;

Page 18: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Arquiteturas de BD.Arquiteturas de BD.

b) Deve-se ter generalidade e alto grau de abstração de dados, possibilitando confiabilidade e eficiência no armazenamento dos dados e permitindo a utilização de diferentes tipos de gerenciadores de dados através de linguagens de consultas padronizadas;

Page 19: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Arquiteturas de BD.Arquiteturas de BD.

c) Projeto de uma interface ágil e com uma "rampa ascendente" para propiciar aprendizado suave ao usuário, no intuito de minimizar o esforço cognitvo;

d) Implementação de um projeto de interface compatível com múltiplas plataformas (UNIX, Windows NT, Windows Workgroup, etc);

Page 20: Introdução a Banco de Dados Aula 02 Prof. Silvestri

Arquiteturas de BD.Arquiteturas de BD.

e) Independência de Implementação da Interface em relação aos SGBDs que darão condições às operações de armazenamento de informações (ORACLE, SYSBASE,INFORMIX, PADRÃO XBASE, etc).

f) Conversão e mapeamento da diferença semântica entre os paradigmas utilizados no desenvolvimento de interfaces (Imperativo (ou procedural), Orientado a Objeto, Orientado aevento), servidores de dados (Relacional) e programação dos aplicativos (Imperativo, Orientado a Objetos).

Page 21: Introdução a Banco de Dados Aula 02 Prof. Silvestri

www.eduardosilvestri.com.brwww.eduardosilvestri.com.br

Eduardo SilvestriEduardo [email protected]@eduardosilvestri.com.br

DúvidasDúvidas

Page 22: Introdução a Banco de Dados Aula 02 Prof. Silvestri

PerguntasPerguntas

1. Explique e exemplifique o modelo de Banco de Dados Orientado a Objetos.

2. Explique e exemplifique o modelo de Banco de Dados Relacional.