Tecnologias de Linguagens para Banco de Dados I
Marcelo Gumercino Costa
TLBD
Revisão
O que são dados?????
Idade Endereço
Nome
Telefone
N°
Rua Dois
João da Silva
Avenida Hum
Maria dos Santos
3229
02
Dois03 Avenida
TLBDRevisão
O que é um banco de dados???
IdadeEndereçoNome TelefoneN°
Rua DoisJoão da Silva
Avenida HumMaria dos Santos
32
2902
03
TLBD
Banco de Dados: Conjunto de dados, organizados por categoriais, de modo a facilitar a pesquisa, comparação eatualização das informações;
Base de Dados. Programa para uso e controle de um banco de dados;
TLBD
Industria hipotéticaVendas: esta função concentra as atividades da industria relativas ao contato com os clientes, como fornecimento de cotações de preços, vendas e informações sobre disponibilidade.
Produção: Esta função concentra as atividades da indústria relativas à produção propriamente dita, como planejamento da produção e controle do que foi produzido.
Compras: Esta função concentra as atividades da indústria relativas à aquisição dos insumos necessários à produção, como cotação de preços junto a fornecedores, compras e acompanhamento do fornecimento.
TLBD
Industria hipotética
Produção Vendas Compras
Produtos Produtos Produtos... ... ...
TLBD
Industria hipotéticaNeste caso, surge o problema de redundância de dados. Redundância de dados ocorre quando uma determinada informação está representada no sistema várias vezes.
Redundância Controlada: quando o software tem conhecimento da múltipla representação e garante sincronia.
Redundância Não Controlada: -> Entrada repetida da mesma informação -> Inconsistência de dados
TLBD
Solução para Redundância
A Solução para evitar a redundância não controlada de informação é o compartilhamento de dados. Nesta forma de processamento, cada informação é armazenada uma única vez, sendo acessada pelos vários sistemas que dela necessitam.
Ao conjunto de arquivos integrados que atendem a um conjunto de sistemas dá-se o nome de banco de dados.
TLBD
Industria hipotética
Produção Vendas Compras
Produtos ...
TLBD
Sistema de Gerência de Banco de Dados
Sistema de gerenciamento de banco de dados
=
Software que incorpora as funções de definição, recuperação e alteração de dados em um banco de dados
TLBD
Modelos de bancos de dados
Um modelo de banco de dados é uma descrição dos tipos de informações que estão armazenadas em um banco de dados. Por exemplo, no caso da indústria citada acima, o modelo de dados poderia informar que o banco de dados armazena informações sobre produtos e que, para cada produto são armazenados seu código, preço e descrição. Observe que o modelo de dados não informa quais os produtos que estão armazenados no banco de dados, mas apenas que o banco de dados contém informações sobre os produtos.
TLBD
Modelos de Banco de Dados
Modelo de banco de dados
=
Descrição formal da estrutura de um banco de dados
TLBD
Para construir um modelo banco de dados, usa-se uma linguagem de modelagem de dados. Linguagens de dados podem ser classificadas de acordo com a forma de apresentar modelos, em linguagens textuais ou linguagens gráficas. Um mesmo modelo de dados pode ser apresentado de várias formas. Cada apresentação do modelo recebe a denominação esquema de banco de dados.
Modelos de Banco de Dados
TLBD
No projeto de banco de dados, normalmente são considerados três níveis de abstração de modelo de banco de dados, modelo conceitual, modelo lógico e do modelo físico.
Modelos de Banco de Dados
TLBDModelos de Banco de Dados
Analista
Realidade Nebulosa
Modelo Conceitual
Modelo Lógico
Modelo Físico (D
observa
defini
Organizar idéias
Mini Mundo
descrição Banco de dados
cria
descreve
TLBD
1. O analista observa a realidade, coleta e organiza idéias e cria o mini-mundo;
2. O mini-mundo é descrito a partir de um modelo conceitual;3. O modelo conceitual é definido pela realidade nebulosa;4. O modelo conceitual desencadeia um modelo lógico, que
desencadeia um modelo físico;5. O modelo físico cria efetivamente o banco de dados;6. O banco de dados descreve a realidade nebulosa.
Modelos de Banco de Dados
TLBD
Um modelo conceitual é uma descrição do banco de dados de forma independente da implementação em um SGBD. O modelo conceitual registra que dados podem aparecer no banco de dados.
Modelo conceitual
TLBD
Modelo conceitual
Modelo conceitual
=
Modelo de dados abstrato que descreve a estrutura de um banco de dados de forma independente de SGBD particular
TLBD
A técnica mais difundida de modelagem conceitual é a abordagem entidade-relacionamento (ER). Nesta técnica, um modelo conceitual é usualmente representado através de diagrama, chamado diagrama entidade-relacionamento (DER).
Modelo conceitual
TLBDModelo Conceitual
TLBD
Um modelo lógico é uma descrição de um banco de dados no nível de abstração visto pelo usuário do SGBD. Assim o modelo lógico é dependente do tipo particular de SGBD que esta sendo usado.
Vamos tratar apenas de modelos lógicos referentes a abordagem relacional.
Modelo Lógico
TLBDModelo Lógico
TLBD Exemplo de banco de dados hierárquico
TLBD
Um modelo lógico de um BD relacional deve definir quais as tabelas que o banco contém e, para cada tabela, quais os nome das colunas.
O modelo lógico para o BD em questão é o seguinte.TipoProduto(codTipoProd,DescrTipoProd);ProdutoI(codProduto,descProduto,precoProd,codTipoProduto);
codTipoProd referencia TipoProduto
Modelo Lógico
TLBD
Modelo Lógico
Modelo lógico
=
Modelo de dados que representa a estrutura de dados de um banco de dados conforme vista pelo usuário do SGBD
TLBD
Detalhes de armazenamento interno de informações, que não tem influência sobre a programação de aplicações no SGBD, mas podem influenciar a performance da aplicação (por exemplo, as estruturas de arquivos usadas no acesso as informações) não fazem parte do modelo lógico. Estes detalhes são representados no modelo físico.
Modelo Físico
TLBD
•Descreve as estruturas físicas de armazenamento de dados:•Tipos de dados
•Tamanho de campos;•Formas de preenchimento;•Nomes de campos, integridade, etc.
•Etapa final do projeto de banco de dados;•Usa DDL (Defination Data Language) para a criação efetiva do banco de dados.
Modelo Físico
TLBD
TabelacodFaixa titulo duracao idCd
1 Comida 5:22 1
2 Pra dizer Adeus 3:42 1
3 Família 3:49 1
4 Marwim 4:24 1
5 Sonífera Ilha 2:50 2
6 É Preciso saber viver 4:11 2
Faixa
cdcodCd titulo cantor gravadora
1 Acústico Titãs SonyMusic
2 Volume dois
Titãs SonyMusic
TLBD – Modelagem Conceitual
• Conhecer a realidade informal e não organizada;• Levantar FATOS que nos permite conhecer e tornar a realidade de forma mais organizada;• Observar e modelar FATOS mostra o funcionamento do negócio;• Registra FATOS através da criação de um modelo;• FATOS estão registrados em documentos formais:
•Fichas;•Memorandos;•Leis;•Decretos; e•Na cabeça das pessoas.
MODELAGEM CONCEITUAL
TLBD
•Ponto central do projeto de banco de dados:• Modelo Entidade-Relacionamento;
•Objetivo da modelagem de dados:• Transmitir e apresentar uma• Representação única,• Não redundante e• Resumida
MODELAGEM CONCEITUAL
TLBD
• Definido por Peter Chen em 1976• Baseado na teoria de E.F. Codd (1970);
• A visão da realidade baseia-se no relacionamento entre entidades, que retratam fatos que governam a realidade.
• Cada entidade (ou relacionamento) possui atributos;
Modelo Entidade-Relacionamento
TLBD
•Abstração:• Separa a realidade em estudo das partes que são relevantes
para o desenvolvimento do Sistema da Informação.• Exclui todos os aspectos que não exercem influência sobre o
ambiente a ser modelado.
Modelo Entidade-Relacionamento
TLBD
•“Entidade” pode ser definida como um objeto do mundo real, concreto ou abstrato e que possui existência independente. Cada entidade possui um conjunto particular de propriedades que a descreve chamado “Atributos”. Um atributo pode ser dividido em diversas sub-partes com significado independente entre si, recebendo o nome de “atributo composto”. Um atributo que não pode ser subdividido é chamado de “atributo simples” ou “atômico”.
Modelo Entidade-Relacionamento
TLBD
• Objeto do mundo real com identificação distinta e significado próprio;• “Coisas” existentes no negócio cujos dados nos interessa armazenar;•A Entidade é uma classe de dados do negócio com um conjunto de dados de características semelhantes;• A Entidade é um arquivo de dados e suas instâncias são os registros desse arquivo.•Definida por um substantivo no singular:• Sem assento, espaço ou cedilha: Ex: Veiculo, FerramentaLeve, etc.
•Representado por um retângulo.
Modelo Entidade-Relacionamento - ENTIDADES
TLBDEntidades
TLBD
•Propriedades que definem as entidades;•Os valores dos atributos criam as instâncias de umaentidade como registros de um arquivo de dados, Ex:• FUNCIONÁRIO
• NumMatricula• Nome• DataAdmissao.
Modelo Entidade-Relacionamento - Atributos
TLBD
•Definida por um substantivos no singular:• Ex: Tamanho, ValorUnitario, Quantidade, etc.• Sem acento, espaço ou cedilha.
• Atributos Chaves dos relacionamentos aparecem no Modelo Lógico mas NÃO aparecem no Modelo Conceitual.
Modelo Entidade-Relacionamento - Atributos
TLBD
• “Chave Primária” é um atributo identificador que representa univocamente cada ocorrência ou registro de uma tabela.
•“Chave Estrangeira” é um atributo que definido como chave primária de uma tabela é incluído na estrutura de outra tabela.
Modelo Entidade-Relacionamento
TLBDAtributos
TLBDExercício 1
TLBD
Identifique as entidades e os seus respectivos atributos através dos fatos descritos no mini-mundo a seguir:
Uma CLÍNICA MÉDICA necessita controlar as consultas médicas realizadas pelos médicos a ela vinculados, assim como acompanhar quem são os pacientes consultados para manter o acompanhamento clínico deles;
Os médicos especialistas (pediatras, neurologistas, cardiologistas, clínicos, etc) são registrados em uma ficha com o CRM, nome, endereço e especialidade;
Os pacientes preenchem uma ficha com nome, endereço e sexo;
Toda consulta é registrada em um fichário próprio com as informações sobre médico, paciente, diagnóstico, data e hora da consulta.
Exercício 2
TLBD
Qual é o modelo de negócio a ser criado?Define o nome do Banco de Dados: Clinica Médica
Identificação das entidadesDefine as tabelas do banco de dados a ser criado: Paciente e Médico
Identificação dos atributos das entidades Define os campos das tabelas: Medico (CRM, Nome, Endereco e Especialidade) e Paciente (Nome, Endereco e Sexo)
E a consulta? Ela tem atributos? Se sim então ela é uma entidade?
Exercício 2 - Análise:
TLBD
E a consulta? Ela tem atributos? Se sim então ela é uma entidade?E a consulta? Observe a expressão:“ Toda consulta é registrada… …com informações sobre Médico, Paciente…” podemos concluir que: A consulta é um elo entre as entidades Medico e Paciente, logo não é uma entidade mas um relacionamento.
Exercício 2 - Análise:
Top Related