Escolar Documentos
Profissional Documentos
Cultura Documentos
Agenda
O que Banco de Dados Como ele funciona Sistema Gerenciador de Banco de Dados Modelagem de Dados Modelo de dados Entidade-Relacionamento Modelo de dados Relacional Mapeamento MER Normalizao de dados
Conceitos Gerais
Banco de Dados - Representa o arquivo fsico de dados, armazenado em dispositivos perifricos, onde esto armazenados os dados de diversos sistemas, para consulta e atualizao pelo usurio. Dado - o valor do campo quando armazenado no Banco de Dados. Tabelas Lgicas - Representam as estruturas de armazenamento de dados (arquivos) dos sistemas. S.G.D.B. (Sistema Gerenciador de Banco de Dados) - o software responsvel pelo gerenciamento (armazenamento e recuperao) dos dados no Banco de Dados. Contedo do campo - o valor do campo armazenado no Banco de Dados. Modelo de Banco de Dados: Modelo Relacional, Modelo Hierrquico e Modelo em Rede. Representa a estrutura fsica no qual o armazenamento dos dados foram projetados. O modelo identifica a estrutura interna de recuperao e armazenamento dos dados no qual o SGBD foi projetado.
Propriedades genricas
Um Bd uma coleo de dados logicamente relacionados, com algum significado.
implica em que associaes aleatrias de dados no possam ser chamadas de bases de dados.
Viso Externa
aquela vista pelo usurio que opera os sistemas aplicativos, atravs de interfaces desenvolvidas pelo analista (programas), buscando o atendimento de suas necessidades
SGBD
usurios /programadores
Programas de aplicao/consultas Software para processar Consultas/Programas Software para Acessar Dados Armazenados
SGBD
Profissionais Envolvidos
Administrador de Banco de Dados:
responsvel por autorizar o acesso ao banco de dados e coordenar e monitorar seu uso.
Profissionais Envolvidos
Usurios Finais:
Profissionais que precisam ter acesso ao banco de dados para consultar, modificar e remover dados
Surgimento de SGBDs
Programas gravam seus dados em disco, segundo estruturas prprias. Para acess-los necessrio conhecer sua estrutura.
SGBDs
Se vrios programas compartilham seus dados, todos devem conhecer e manipular as mesmas estruturas. Se algum programa precisar de alguma mudana na estrutura de dados, todos os programas tero que ser alterados, mesmo que a alterao ocorra em dados que ele no utiliza.
SGBDs
Soluo: colocar um sistema entre os dados e os programas, que converta o formato em que os dados esto gravados para o formato especfico que cada programa precisa dos dados.
SGBDs
Cada programa:
V apenas os dados que lhe interessam; No precisam entrar em detalhes de como seus dados esto fisicamente gravados; No precisa ser modificado se a estrutura de dados que ele no utiliza for mudada
Propriedades de SGBDs
Consistncia de dados:
O SGBD avalia os dados recebidos atravs de regras de integridade, garantindo que sempre estejam corretos.
Validade:
Os dados so vlidos quando pertencem ao domnio de valores possveis naquele caso.
Programas de Aplicao
Esquema de Converso
Banco de Dados
Endereco
R. Tulipas 89 Av. Clvis Penteado 98 R. Marechal Deodoro
Telefone
0162761112 Residencial 0192445618
Dado invlido !
Propriedade de SGBD
Completeza:
Todos os dados que precisam ser conhecidos esto disponveis.
Consistncia:
Sempre que a mesma informao gravada, mesmo que em locais diferentes, ela tem o mesmo valor.
Exemplos de SGBDs
Sybase Oracle Informix CA-OpenIngres DB2 Dataflex ZIM Gupta Postgress SQL-Server DBase Paradox Unify FoxPro Access Orion O2 Jasmine Firebird
Modelagem de Dados
Modelo de Dados
Coleo de elementos de representao com propriedades semnticas e sintticas prdefinidas Um elemento ou um conjunto de elementos de representao so agrupados e organizados para representar uma poro do mundo real, constituindo um esquema de dados compreensvel pelo gerenciador.
Modelo de Dados
Programas de Aplicao
Traduo
Esquema de Dados segundo um Modelo de Dados
Esquema de Converso
Traduo
Banco de Dados
SGBD
Qual SGBD utilizar?
Banco de Dados
Respondendo s perguntas...
Programas de Aplicao
Esquematizando-os segundo uma estrutura padronizada!
Banco de Dados
Telefone
016-2761112 011-8548620 019-2445618
Esquema
Nome
Endereo Telefone
Modelos de Dados
Modelo de Dados
Coleo de elementos de representao com propriedades semnticas e sintticas prdefinidas. Um elemento ou um conjunto de elementos de representao so agrupados e organizados para representar uma poro do mundo real, constituindo um esquema de dados compreensvel pelo gerenciador.
Representao Grfica
Entidade Relacionamento Atributo
Relacionamento
O Relacionamento representa a associao entre os elementos do conjunto de um entidade com outra entidade
Joo est matriculado na disciplina de Banco de Dados
ALUNO MATRICULADO DISCIPLINA
Cardinalidade de Relacionamentos
Corresponde ao nmero de entidades com que um determinado conjunto de entidades pode se relacionar atravs de um determinado relacionamento
Relacionamento 1:1 - O Joo casado com a Maria Joo - Elemento do conjunto de valores do atributo Nome da entidade Homem. Maria - Elemento do conjunto de valores do atributo Nome da entidade Mulher. casado - Ligao entre um homem e uma mulher, sendo que um homem pode ser casado com uma e apenas uma mulher, assim como uma mulher pode ser casada com um e apenas um homem
Cardinalidade de Relacionamentos
Relacionamento 1:N ou N:1 - O Pedro trabalha no Departamento Pessoal
EMPREGADOS
Trabalha em
DEPARTAMENTO
Cardinalidade de Relacionamentos
Relacionamento N : M - O Antnio est matriculado na disciplina Banco de Dados
Ligao existente entre um aluno e uma disciplina, onde um aluno pode estar matriculado em vrias disciplinas e cada disciplina pode ter vrios alunos matriculados
ALUNOS
MATRICULA DO DISCIPLINA
Grau de Relacionamento
Corresponde ao nmero de conjuntos de Entidades participantes em um relacionamento
Relacionamento Ternrio:
FORNECEDORES UTILIZADO MATERIAIS
PROJETOS
Parcial
Total
e1
Atributos
Fone = 274-8232
Pessoa
Estudante
Atributo Multivalorado
Nome
RM
Endereo
Fone
Atributo Composto
Estudante
Nome
RM
Endereo
Fone Aniversrio
Estudante
Atributo Derivado
Idade
Monovalorado
Multivalorado
Composto
Derivado
Conjunto de Entidades
Disciplina
Sigla
Nota
Disciplina
Sigla
Nota
Disciplina
M Ministra
Departamento
Professor
Disciplina
O conjunto de entidades Ementa s existe se existirem Disciplinas. Uma Ementa nunca existir sozinha.
Disciplina
O conjunto de entidades Ementa s existe se existirem Disciplinas, portanto, obrigatoriamente participar do relacionamento Possui com Disciplina.
Disciplina
O conjunto de entidades Ementa relaciona-se com Disciplina atravs do seu tipo de relacionamento Identidade.
Disciplina
Simplificando Modelagens
Aluno Professor Engenheiro
Simplificando Modelagens
Pessoa
GENERALIZAR
Aluno
Professor
Engenheiro
Simplificando Modelagens
Nome
Abstrao de Generalizao
Pessoa
GENERALIZAR
Sexo Altura
Idade
Aluno
NroMatricula
Professor
CRP/MEC
Paciente
Pronturio
Propriedades Generalizao
Nome Idade Sexo
Pessoa
Altura Cludia
Disjuno X Sobreposio (D x S)
E/OU
Aluno
NroMatricula
Professor
CRPMEC
Paciente
Prontuario
Propriedades Generalizao
Nome Idade Sexo
Pessoa
Altura Cludia
Disjuno X Sobreposio (D x S)
OU
Aluno
NroMatricula
Professor
CRPMEC
Paciente
Pronturio
Propriedades Generalizao
Nome Idade Total X Parcial (T x P) Sexo
Pessoa
Altura Cludia
E/OU
E/OU
Aluno
NroMatricula
Professor
CRPMEC
Paciente
Prontuario
Propriedades Generalizao
Nome Idade Total X Parcial (T x P) Sexo
Pessoa
Altura Cludia
Aluno
NroMatricula
Professor
CRPMEC
Paciente
Prontuario
Abstrao de Agregao
Disciplina
N Ministra M N -frequentada Sigla
Professor
Nome
Aluno
Nome
Abstrao de Agregao
Disciplina
N Ministra M Sigla
AULA
Professor
Nome
Abstrao de Agregao
AULA Disciplina
N Ministra M Sigla
AULA uma
Agregao
dos conjuntos de entidades Professor e Disciplina.
Data Hora Nome
Professor
Abstrao de Agregao
Disciplina AULA N N -frequentada
Sigla
O uso de agregao torna possvel expressar relacionamento entre relacionamentos
Ministra M Professor
Nome
Aluno
Nome
Ministra M Professor
Nome
Aluno
Nome
Modelo Relacional
Codd 1970 Modelo de dados fsico
Modelo mais implementado em SGBD!!!
Modelo Relacional
Uma base de dados estruturada de acordo com o modelo de dados relacional como uma coleo de relaes. Uma relao uma tabela (associada a um nome nico) na qual cada linha representa uma coleo de dados.
Os valores podem ser interpretados como um fato que descreve a instncia de uma entidade ou relacionamento.
Modelo Relacional
As colunas de uma relao so chamadas de atributos e as linhas de tuplas.
O conjunto de valores (atmicos ou indivisveis) que define cada atributo de uma relao chamado de domnio (especificado com um tipo de dados ou formato).
Modelo Relacional
Atributos
Nome Endereo
R. Tulipas 89 Av. Clvis Penteado 98 R. Marechal Deodoro
Telefone
0xx16-2761112
T U P L A S
0xx11-8548620 0xx19-2445618
Domnio
Modelo Relacional
O nmero de atributos de uma relao chamado de grau da relao. Formalmente, uma relao R um conjunto de tuplas <d1, d2, ..., dn> onde cada elemento di pertence a um domnio Di.
Seja F um conjunto de atributos de uma relao R1 definido sobre os mesmos domnios dos atributos da chave primria K de uma relao R2. Para qualquer tupla t1 de R1, t1[F] = t2[k], onde t2 alguma tupla de R2, onde K a chave primria de R2 e F a chave estrangeira de R1.
CIC
062.360.718-29 NULO 343.564.786-98
Telefone
0162761112 0118548620 0162761112
Maria
Nome
Jos de Almeida Maria Dias Maria
CIC
062.360.718-29 172.334.098-02 343.564.786-98
Telefone
016-2761112 011-8548620 016-2761112
Depto
DM DC DEP
Integridade Referencial
Departamento
DM DC
;rea
Matematica Computao Produo
DEP
Mapeamento MER
B B1 B2
R11
A A1 A2
B B1 B2
B B1 B2
Tipos de relacionamentos 1 x 1
A A1 A2
1 R1 1
B B1 B2
R11 OU
A A1 A2 R11 B1
B B1 B2 R11 A1
Tipos de relacionamentos 1 x N
A A1 A2
1 R1 N
B B1 B2
R11 B A1 B1
B2
R11
Tipos de relacionamentos M x N
A A1 A2
M R1 N
B B1 B2
R11
R1 A1 B1 R11
B B1 B2
A A1 A2 B1
B B2
A A1 A2 B1
B B2
A A1 A2 C1 C C1 C2
B B1 B2 C1
A A1 A2 B1
B B2
A A1 A2 C1 C2
B B1 B2 C1 C2
Abstrao de agregao
C A A1 A2
R1
(cont.)
B B1 B2
R11
C1
Abstrao de agregao
C A A1 A2
R1
(cont.)
B B1 B2
R11
A A1 A2
C1
B B1 R11 B1 A1 B2
C C1
Abstrao de agregao
Projeto Professor Nome
Orienta
(cont.)
Tipo
Titulo
Abstrao de agregao
Projeto Professor Nome
Orienta
(cont.)
TItulo
Tipo
Abstrao de agregao
(cont.)
Professor Nome
Ministra
Disciplina Sigla
Data
Hora
Sala
Abstrao de agregao
Aula Professor Nome
Ministra
(cont.)
Disciplina
Sigla
Data
Hora
Sala
Disciplina Sigla
Professor Nome
Abstrao de agregao
Aula Professor Nome
Ministra
(cont.)
Disciplina Sigla
Sala
Abstrao de agregao
Aula
(cont.)
Professor
Nome
Ministra
Disciplina
Professor Nome
Data
Hora
Sala
Disciplina
Sigla
Atributos multivalorados
Os atributos multivalorados podem ser mapeados para uma nova relao, ou simplesmente podem fazer parte da chave primria.
Professor
Nome
N_Func
Fone
Atributos multivalorados
Professor Nome N_Func Fone
Professor Nome
N_Func Fone
Exerccio
Com base no documento de Requisitos fazer o Mapeamento para o Modelo Entidade Relacionamento.
Normalizao de Dados
Normalizao de Dados
Ao normalizarmos a informao estamos garantindo:
A no existncia de redundncias (cada dado deve ser armazenado uma nica vez e numa nica localizao) Consistncia da Informao - Qualquer operao de manipulao da informao (Insero, Alterao, Destruio) deve afetar uma s ocorrncia de um dado Viso relacional dos dados
Consistncia de Dados
O controle de consistncia pode ser exercido:
Consistncia de Dados
Manter consistncia de dados pela prpria construo do sistema:
Controlar a construo do sistema atravs da criao de tabelas segundo regras que garantam a manuteno de certas propriedades. As tabelas que atendem a um determinado conjunto de regras, diz-se estarem em uma determinada forma normal.
Nome_Filhos
Endereco
Nome_filhos
Quantos filhos?
Substitui-se o atributo multivalorado por um conjunto de atributos de mesmo domnio, cada um representando a ocorrncia de um valor.
Retira-se da relao o atributo multivalorado, e cria- se uma nova relao que tem o mesmo conjunto de atributos chave, mais o atributo multivalorado como chave, porm tomado como monovalorado.
Endereco
DataNasc
Nome
Idade DataNasc
fone1
fone2
fone3
DataNasc
Telefone
Nome
Endereco
DataNasc
Nome
Telefone
Nmero,Sigla
Sala, Nmero-Horas
Sigla
Nmero-Horas
Turma
Curso Sala
Curso Nmero-Horas
Nmero-Horas 2 2 3 4 2
Turma, Curso
Horario, Nmero-Horas
Curso
Nmero-Horas
Nmero-Horas 2 2 3 4 2
Word Word
Nmero, Sigla
Sala
Sala
Sala
Prdio
Prdio
Turma A B A A B
Sala 3 4 12 4 12
Prdio E1 E1 C2 C2 C2
Sala, Prdio
Valores Inconsistentes!!!!!
Turma A B A A B
Curso Access
Access
Sala 3 4 12 4 12
Prdio E1 E1 C2 C2 C2
Se no houver aula em uma determinada sala nesse semestre perde-se a informao sobre qual prdio contm a tal sala.