Tecnologias de Linguagens para Banco de Dados I

Post on 11-Feb-2016

49 views 0 download

description

Tecnologias de Linguagens para Banco de Dados I. Marcelo Gumercino Costa. TLBD. Idade. 29. Endereço. 32. Telefone. Avenida Hum. Rua Dois. 03. Dois. Avenida. N°. 02. João da Silva. Nome. Maria dos Santos. TLBD. Nome. Endereço. N°. Idade. Telefone. 29. 02. João da Silva. - PowerPoint PPT Presentation

Transcript of Tecnologias de Linguagens para Banco de Dados I

Tecnologias de Linguagens para Banco de Dados I

Marcelo Gumercino Costa

TLBD

Revisão

O que são dados?????

Idade Endereço

Nome

Telefone

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: