Texto

(1)
(2)

OBJETIVOS

• Entender o que é um Modelo Relacional

• Detalhar os conceitos de Atributo, Domínio, Tupla, Chave Primária e Chave Estrangeira

• Utilizar ferramenta para definir um modelo relacional

(3)

AGENDA

• INTRODUÇÃO

• TABELAS

• ATRIBUTOS / DOMÍNIO / TUPLA

• PRÁTICA

• TIPOS E PROPRIEDADES DOS DADOS

• CHAVE PRIMÁRIA

• CHAVE ESTRANGEIRA

(4)

INTRODUÇÃO

O

projeto lógico

é uma transição entre o

projeto conceitual

e o

físico

,

ou seja, estamos saindo do projeto conceitual (independente de

SGDB) para o físico (especifico de SGDB)

O

Modelo Relacional

representa os dados num Banco de Dados

como uma coleção de

relações

e seus

relacionamentos

(5)

INTRODUÇÃO

Na aula anterior vimos que o Modelo Entidade-Relacionamento

(MER) permite criarmos qualquer tipo de relacionamento

Nem sempre todos os relacionamentos podem ser

implementados num

modelo relacional

da maneira como foi

definido antes (no MER)

• Limitações em função da natureza dos problemas (no plano conceitual, é possível fazer muitas coisas; porém no plano físico nem sempre é

possível implementá-las)

• Limitações pelas características do SGBD

(6)

ANÁLISE DE REQUISITOS

MODELO

CONCEITUAL

PROJETO LÓGICO

PROJETO FÍSICO

(7)

TABELAS

• As relações do Modelo Relacional são também chamadas de Tabelas

• Funcionários, Alunos, Clientes, Cursos,...

• Como armazenar informações em Tabelas? Através dos atributos , que são todas as informações inerentes a todas as relações existentes em um Banco de Dados

(8)

ATRIBUTOS

• São todas as informações que existem em uma tabela

• Também chamadas de campos

• Notação no MER

(9)

TIPOS DE ATRIBUTOS

• Simples ou Composto

Simples: não pode ser dividido

Composto: Pode ser referido em partes (Nome: Prenome / sobrenome)

• Monovalorado ou Multivalorado

Monovalorado: Só possui um valor para uma instância da realidade (Ex: CPF) • Multivalorado: Pode possuir vários valores para uma instância da realidade (Ex:

(10)

ATRIBUTOS (CONT.)

• Obrigatório: não pode ter o valor nulo ou não informado – vazio (Ex: Nome do Funcionário, RG)

(11)

DOMÍNIO

• São todos os valores possíveis que um atributo pode receber

• Define o tipo e o formato do dado

Exemplos:

CEP: Qualquer número, no formato nnnnn-nnn

(12)

TUPLAS

• Representam o conjunto de atributos de uma ocorrência de uma tabela

• São os registros de uma tabela

MATRICULA NOME CURSO DATA

MATRIC

TELEFONE ...

201602RC01 JOÃO C 09/01/2016 81992371413 ... 201602RC02 MARIA G 11/01/2016 81986437793 ... 201602RC03 GILDA H 12/01/2016 81999876880 ...

ATRIBUTO (CAMPO)

(13)
(14)
(15)

Luiz Fernando F Miranda 15

(16)

16

Ao clicar com o botão direito do mouse sobre a tabela criada, escolha a opção

Edit Table

. Uma aba na parte inferior aparecerá

(17)

Clique com o botão direito do mouse sobre a tabela e escolha a

opção

Edit Table

. Uma aba na parte inferior aparecerá com o

(18)

ASSOCIADO. Para isso, ir para a aba Columns.

(19)

TIPOS DE DADOS

• Os mais utilizados:

TIPOS

DESCRIÇÃO

INT

Valores numéricos inteiros (de 2147483648 a

-2147483647)

VARCHAR

Cadeia de caracteres alfanuméricos de tamanho

variável entre 1 e 255 caracteres

(armazenamento mais “econômico”)

DECIMAL

Valores numéricos com casas decimais

(20)

PROPRIEDADE DOS DADOS

Sigla

Nome

Descrição

PK

PRIMARY KEY

chave primária

NN

NOT NULL

conteúdo obrigatório diferente

de vazio

UQ

UNIQUE INDEX

Cria/remove index

BIN

BINARY Armazena dados nos formato binário

UN

UNSIGNED Não armazena números negativos

ZF

ZEROFILL Preenchimento de zeros à esquerda

(21)

CHAVE PRIMÁRIA

• Recurso utilizado para distinguir uma ocorrência dentro das entidades

• É o atributo que identifica univocamente cada tupla (registro) de uma tabela (identificador individual do registro)

• Não haverá conteúdos idênticos de campos que são chaves primárias

• É uma coluna ou uma combinação de colunas cujos valores distinguem uma linha (registro) das demais dentro de uma tabela

(22)

CHAVE PRIMÁRIA (CONT.)

• Exemplos de informações potenciais para serem chaves primárias:

• CPF • CNPJ

• Matrícula do Funcionário • Matrícula do Aluno

• Número da conta bancária (Banco-Agência-Conta) • Código da peça

(23)

CHAVE PRIMÁRIA (CONT.)

• Restrições de integridade para a formação de chaves primárias:

Unicidade (Não permite que a chave candidata a ser chave primária não possua o mesmo valor em duas ou mais tuplas distintas)

Não pode ter valor NULO (diferente de 0 ou espaços)

(24)

CHAVE PRIMÁRIA (CONT.)

Código Categoria

A SÓCIO ATLETA

C SÓCIO COLABORADOR D SÓCIO DEPENDENTE

CATEGORIAS DE SÓCIOS

Matrícula Nome Data Admissão Cod.Categ

00102845 KARLA PATRÍCIA 19/09/2011 C 00102846 VALTER

MEDEIROS

21/09/2011 D

00102847 PEDRO CARLOS 25/09/2011 D 00102848 JOSÉ MARCOS 28/09/2011 A

(25)

CHAVE PRIMÁRIA (CONT.)

Código Categoria

A SÓCIO ATLETA

C SÓCIO COLABORADOR D SÓCIO DEPENDENTE

CATEGORIAS DE SÓCIOS

Matrícula Nome Data Admissão Cod.Categ

00102845 KARLA PATRÍCIA 19/09/2011 C 00102846 VALTER MEDEIROS 21/09/2011 D 00102847 PEDRO CARLOS 25/09/2011 D 00102848 JOSÉ MARCOS 28/09/2011 A

CADASTRO DE

SÓCIOS

Atualização em

cascata (ou por

propagação)

(26)

CHAVE PRIMÁRIA (CONT.)

Código Categoria

A SÓCIO ATLETA

C SÓCIO COLABORADOR

CATEGORIAS DE SÓCIOS

Matrícula Nome Data Admissão Cod.Categ

00102845 KARLA PATRÍCIA 19/09/2011 C 00102848 JOSÉ MARCOS 28/09/2011 A

(27)

CHAVE PRIMÁRIA (CONT.)

• Observação:

• Dois ou mais atributos, em conjunção, podem ser definidos como chaves primárias (também conhecido como SUPERCHAVE ou CHAVE COMPOSTA)

Exemplos:

Código e Título de um Livro (para distinguir edições diferentes de uma publicação)

(28)

CHAVE PRIMÁRIA (CONT.)

(29)

CHAVE ESTRANGEIRA

• No Modelo Relacional é FUNDAMENTAL a integridade das informações armazenadas

• Essa integridade se faz, dentre outras situações, quando as informações em uma tabela se relacionam com outras informações em outras tabelas

(30)

CHAVE ESTRANGEIRA (CONT.)

Relação entre Associado e Dependente

• É preciso saber qual é o associado pelo qual o dependente depende

• Então definimos que toda a matricula que for cadastrada na tabela Dependente deve estar cadastrada na tabela Associado

• Isso garante que um dependente esteja sempre “ligado” a um Associado

(31)

CHAVE ESTRANGEIRA (CONT.)

(32)

MIGRAÇÃO MER

MR

Primeiro Passo – Mapear entidades

• O primeiro conceito que devemos ter em mente é o conceito de entidade. No Modelo Relacional, entidades são mapeadas para tabelas (cada

entidade do modelo ER será mapeado para uma tabela no Modelo Relacional)

(33)

MIGRAÇÃO MER

MR (CONT.)

Segundo Passo – Identificar atributos simples

• No Modelo Relacional os atributos possuem um domínio definido (indicar no MySql Workbench o tipo de dado que o atributo irá armazenar)

Ex: Entidade Associado

Tabela Associado

Atributo Nome Coluna Nome Alfanumérico

(34)

MIGRAÇÃO MER

MR (CONT.)

Terceiro Passo – Identificar atributos compostos

• É aquele onde seu conteúdo é formado por vários itens menores. Para mapear atributos compostos no Modelo Relacional, você deve definir na tabela apenas os atributos simples do atributo composto.

Ex: Entidade Associado

Tabela Associado

(35)

MIGRAÇÃO MER

MR (CONT.)

• No MER os atributos chaves são sublinhados (ou destacados com cor escura).

• No modelo Relacional são mapeados para chaves primárias

Ex: MatrículaColuna matricula será chave primária da tabela ASSOCIADO

Quarto Passo

(36)

MIGRAÇÃO MER

MR (CONT.)

Quinto Passo – Identificar atributos multivalorados

• É aquele onde seu conteúdo é formado por vários valores. Por exemplo, o associado pode possuir mais de um nº de telefone

• Para fazer o mapeamento do atributo multivalorado para o Modelo

(37)

MIGRAÇÃO MER

MR (CONT.)

Ex: Criar a tabela ASSOC-TELEFONE

Criar atributos matricula e telefone

(38)

ATIVIDADE

• Crie um Modelo Relacional de um sistema escolar, com base no Modelo Entidade-Relacionamento criado na aula anterior.

• Crie as tabelas com atributos, chaves primárias e estrangeiras

Imagem

Referências

temas relacionados : Modelo relacional