38
Aula 1: MER prof. Gustavo Zimmermann

Banco de Dados II: MER (aula 1)

Embed Size (px)

Citation preview

Aula 1: MER prof. Gustavo Zimmermann

BD x SGBD ???

prof. Gustavo Zimmermann | [email protected]

Banco de Dados

Banco de Dados II – Aula 1: MER

BD x SGBD

“Bancos de dados ou Bases de Dados é um conjunto de

arquivos relacionados entre si com registros sobre pessoas,

lugares ou coisas. São coleções organizadas de dados

que se relacionam de forma a criar algum sentido

(Informação) e dar mais eficiência durante uma pesquisa ou

estudo.“

Kenneth C. Laudon e Jane P. Laudon

prof. Gustavo Zimmermann | [email protected]

Sistema Gerenciador de Banco de Dados

Banco de Dados II – Aula 1: MER

BD x SGBD

“Um SGBD é o conjunto de programas de computador

(softwares) responsáveis pelo gerenciamento de um

banco de dados. Seu principal objetivo é retirar da

aplicação cliente a responsabilidade de gerenciar o acesso,

a manipulação e a organização dos dados.“

Microsoft

prof. Gustavo Zimmermann | [email protected]

Funcionamento

Banco de

Dados SGBD

Aplicação 1

Aplicação 2

Aplicação 3

Aplicação N

1. O usuário emite uma solicitação de acesso.

2. O SGBD intercepta a solicitação e a analisa.

3. O SGBD inspeciona os esquemas externos (ou sub esquemas) relacionados àquele usuário, os

mapeamentos entre os três níveis, e a definição da estrutura de armazenamento.

4. O SGBD realiza as operações solicitadas no banco de dados armazenado.

Banco de Dados II – Aula 1: MER

BD x SGBD

prof. Gustavo Zimmermann | [email protected]

Popularidade | Ranking (JAN/2016)

Referência http://db-engines.com/en/ranking

1º 6º

2º 7º

3º 8º

4º 9º

5º 10º

Banco de Dados II – Aula 1: MER

BD x SGBD

SGBD arquitetura

prof. Gustavo Zimmermann | [email protected]

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

Arquitetura

01. Arquitetura de um SGBD

02. Esquemas

03. Arquitetura das Camadas de um SGBD

04. Linguagens para Manipulação de Dados

05. Classificação dos SGBDs

prof. Gustavo Zimmermann | [email protected]

Arquitetura de um SGDB MODELAGEM DE DADOS

Alto Nível Estrutura Lógica

Baixo Nível Estrutura Física

MER, o seu principal conceito é uma projeção dos dados que deixa o mais próximo possível da visão que o usuário tem dos dados.

Modelo de Dados Físicos, é o que fornece uma visão mas detalhada do modo como os dados estão armazenados no computador.

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

prof. Gustavo Zimmermann | [email protected]

Esquemas : planejamento

Quando é usado o termo descrição do banco de dados,

entendemos como a chamada de “esquema de uma

banco de dados” que é especificada durante um projeto de

banco de dados.

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

prof. Gustavo Zimmermann | [email protected]

Arquitetura das Camadas

Usuários Finais

Esquema Conceitual

Esquema Interno

DADOS ARMAZENADOS

estrutura humana nível EXTERNO

estrutura lógica nível CONCEITUAL

estrutura física nível INTERNO

Visão Externa

Mapeamento Conceitual Externo

Mapeamento Conceitual Interno

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

prof. Gustavo Zimmermann | [email protected]

Linguagens para Manipulação de Dados

DDL (Data Definition Language - Linguagem de Definição de

Dados) é definido pelo nível conceitual e interno.

Programador Digita a Linguagem DDL

SGBD Compila a Linguagem DDL

E recebe permissão pra executar as instruções

Banco de Dados guarda as novas

informações 01. 02. 03.

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

prof. Gustavo Zimmermann | [email protected]

Linguagens para Manipulação de Dados

Quando o desenvolvedor tem o conhecimento em uma linguagem SQL (Strucuture Query

Language) basta apenas usar a base dos comandos que formam as linguagens DDL, DCL e

a DML.

• DDL (comandos que criam, alteram ou removem objetos):

• CREATE, ALTER, DROP.

• DCL (comandos que ajudam na segurança do banco de dados):

• GRANT, REVOKE.

• DML (comandos responsáveis pela manipulação dos dados):

• SELECT, DELETE, UPDATE, INSERT.

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

prof. Gustavo Zimmermann | [email protected]

• Usuários: monousuários, são usados em estações de trabalho, minicomputadores e

máquinas de grande porte.

• Localização: possuem 2 estados localizado e distribuído. Quando é localizado todos os

dados encontram-se em um único disco, se for distribuído os dados estarão em várias

máquinas.

• Ambiente: possui 2 tipos, os homogêneo que é o ambiente formado por um único

SGBD e o heterogêneo que é o ambiente composto por diferentes SGBDs. Um exemplo

é ter um sistema rodando 2 tipos de banco de dados.

Classificação dos SGBDs

Banco de Dados II – Aula 1: MER

Arquitetura SGBD

MER Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

Banco de Dados Relacionais

Edgar Frank Codd Matemático Britânico em jun/1970 definiu as principais implantações necessárias

para o correto funcionamento de um banco de dados relacional.

Donald Chamberlin e Raymond Boyce Desenvolveram, em 1974, uma linguagem de consulta que facilitava o acesso e a

manutenção de bancos de dados relacionais oferecendo os recursos necessários

para a sua utilização em larga escala o que atendia as necessidades do mercado.

Peter Pin-Shan Chen Em 1976 definiu uma metodologia para a modelagem de projetos de bancos de

dados utilizando os bancos de dados relacionais.

prof. Gustavo Zimmermann | [email protected]

Componentes do MER • Entidades

• Atributos

• Relacionamento

MER

MER (Modelo de Entidade e Relacionamento) é uma ferramenta gráfica usada para projetar

e auxiliar na implementar de bancos de dados cuja a finalidade é identificar as entidades e

os seus relacionamentos.

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Entidades: São abstrações do mundo real que contem um conjunto

de informações inter-relacionadas e coerentes, estas informações são

chamadas de atributos.

MER : componentes

Nomeação:

Nome que a identifica,

geralmente formada

por um substantivo no

singular.

Representação Gráfica:

Retângulo com o nome ao centro

Funcionario

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo: Cada informação que compõe uma Entidade, possui um

NOME, um TIPO e um TAMANHO (número de caracteres). De modo

genérico o “tipo” pode nominado como “texto”, “número”, “data e

hora”, entre outros.

MER : componentes

Nomeação:

• Começar com uma letra.

• NÃO conter espaço ou acentuação.

• Caracteres especiais apenas “_”.

Representação Gráfica:

Circulo com o nome ao lado

ou uma elipse com o seu nome

dataDemissao

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : atributos

Tipos de Atributo:

• Simples

• Composto

• Multivalorado

• Opcional

• Derivado

• Identificador

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo (composto): Representa a estrutura das informações que

serão armazenados no atributo.

nome

primeiroNome sobreNome

endereco

rua

complemento

numero

MER : atributos

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo (multivalorado): Pode possuir diversos valores para uma

única entidade.

Funcionario telefones

Representação Gráfica:

Um Circulo dentro do Outro

MER : atributos

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo (opcional): Atributo que define opções de escolha.

Funcionario

Exemplo:

sexo

MER : atributos

masculino

feminino

Um Atributo Opcional, ao mesmo

tempo, pode ser um Atributo

Composto ou Multivalorado.

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo (derivado): Atributo cujo valor pode ser derivado a partir de

outro atributo

Funcionario idade

Representação Gráfica:

Um Circulo Pontilhado

dataNasc sexo

nome

MER : atributos

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Atributo (identificador): Permite identificar univocamente cada

entidade em um conjunto entidades.

Funcionario Representação Gráfica:

Um Circulo Preenchido ou Com o

seu nome Sublinhado

rg sexo

nome

MER : atributos

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

• Relacionamento: Elemento responsável por definir as características

das ligações entre as entidades.

MER : componentes

Nomeação:

Nome expresso por um verbo ou uma

locução verbal.

Representação Gráfica:

Losango com o nome ao centro

Pertence

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : cardinalidade Definição do tipo de Relacionamento entre as Entidades

• 1 para N

• N para 1

• N para N

• 1 para 1

Vencedor Cliente atende 1 N

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : cardinalidade Definição do tipo de Relacionamento entre as Entidades

• 1 para N

• N para 1

• N para N

• 1 para 1

Funcionario Departamento pertence N 1

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : cardinalidade Definição do tipo de Relacionamento entre as Entidades

• 1 para N

• N para 1

• N para N

• 1 para 1

Cliente Produto compra N N

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : cardinalidade Definição do tipo de Relacionamento entre as Entidades

• 1 para N

• N para 1

• N para N

• 1 para 1

Funcionario Departamento gerencia 1 1

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : cardinalidade Definição do tipo de Relacionamento entre as Entidades

codigo

Funcionario Departamento gerencia 1 1

nome codigo nome

Exemplo: Sua implementação exige a inclusão das chaves primárias das

entidades envolvidas e se for necessário outros atributos

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

MER : restrições Melhor entendimento da situação

Funcionario Departamento pertence N 1

Pode haver Funcionário sem Departamento associado?

(1 : N) (0 : 1)

(mínimo : máximo)

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

Dr. Carlos Aberto Heuser Em 2001 propôs o uso da Restrição de Cardinalidade

prof. Gustavo Zimmermann | [email protected]

MER : agregação Definição de relacionamento com um conjunto de entidades

Cliente Produto compra N N

Funcionario

atende

N

1

Banco de Dados II – Aula 1: MER

MER – Modelo Entidade e Relacionamento

DER Diagrama de Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

É a representação gráfica dos elementos definidos como parte do MER,

após o levantamento das entidades, atributos e relacionamentos.

Funcionario Departamento pertence N 1

(0 : N) (1 : 1)

cod_Depto

codigo nome

dataAdmissao

codigo descricao

DER O Modelo Entidade e Relacionamento gera o Diagrama de Entidade e Relacionamento

Banco de Dados II – Aula 1: MER

DER – Diagrama de Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

EXERCÍCIO

Criar um Diagrama de Entidade e Relacionamento

para um Banco de Dados que armazenará

informações de um Sistema para uma Mecânica. O

Diagrama deverá ter no mínimo 3 entidades.

Banco de Dados II – Aula 1: MER

DER – Diagrama de Entidade e Relacionamento

prof. Gustavo Zimmermann | [email protected]

EXERCÍCIO : resolução possível

Veiculo Cliente pertence 1 1

Recepcionista

atende

N

1

(0 : 1) (0 : 1)

(0 : N)

(1 : 1)

endereco

nome telefones

email

dataNasc

codCliente cnh

placa marca modelo

ano cor

codAtendimento

problemaVeiculo

km

data

kmEntrada kmRetirada

dataEntrada dataRetirada

rua

bairro

cep cidadeEstado

numero complemento

Banco de Dados II – Aula 1: MER

DER – Diagrama de Entidade e Relacionamento

<fim /> bora pra casa!