BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios



Documentos relacionados
Tecnologias e Linguagens para Banco de Dados I. Expressão do Relacionamento. Expressão do Relacionamento

BANCO DE DADOS I AULA 6. Wlllamys Araújo willamysaraujo7@gmail.com

Disciplina de Banco de Dados Parte V

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

Gestão de Tecnologia da Informação

Profa. Daniela Barreiro Claro

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Modelo de Dados. Modelos Conceituais

Disciplina: Unidade III: Prof.: Período:

UNIVERSIDADE FEDERAL FLUMINENSE PÓLO UNIVERSITÁRIO DE RIO DAS OSTRAS FACULDADE FEDERAL DE RIO DAS OSTRAS CURSO DE CIÊNCIA DA COMPUTAÇÃO

Modelo Entidade-Relacionamento

CICLO DE VIDA DE UM BD

Modelagem de Banco de Dados através do ERwin

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

Diagrama de Entidade e Relacionamento

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho

Banco de Dados - Senado

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

LINGUAGEM DE BANCO DE DADOS

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Fundamentos de Bancos de Dados Prova 3

ACCESS BÁSICO. Exercício 1 NCE/UFRJ. 1. O que são bancos de dados?...

MODELO RELACIONAL - UFMA

Projeto de Banco de Dados

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:

Exercícios de Lógica Exercícios de Fixação 08

Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01

Banco de Dados Lista de Exercícios 01

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

1. Domínio dos Atributos

Junções e Índices em Tabelas

Orientação a Objetos

MSc. Daniele Carvalho Oliveira

Prof.: Clayton Maciel Costa

BANCO DE DADOS I AULA 3. Willamys Araújo

Lista de exercícios 01

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS

PHP INTEGRAÇÃO COM MYSQL PARTE 1

MODELO DE DADOS. 1. Modelo de Dados. É uma imagem gráfica de toda a base de informações necessárias para um determinado empreendimento.

Banco de Dados para Redes. Cassio Diego cassiodiego.com/bdr

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Modelo Relacional. 2. Modelo Relacional (Lógico)

Ajuda On-line - Sistema de Portaria. Versão 4.8.J

Modelagem de Dados UNIDADE DE REVISÃO E RECUPERAÇÃO

Modelagem de Dados MODELAGEM DE DADOS. Lista de Exercícios - AV02. Luiz Leão luizleao@gmail.com Lista de Exercícios AV1

Banco de Dados I Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 3) Clodis Boscarioli

Persistência e Banco de Dados em Jogos Digitais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Faculdade Lourenço Filho - ENADE

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

Curso Superior de Tecnologia em BD

Ciclo de vida de um banco de dados relacional

Projeto e Implementação

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

Prof.: Clayton Maciel Costa

Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

Modelo de Dados Relacional Restrições de um Banco de Dados Relacional

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

Modelo de Dados. Modelo para organização dos dados de um BD

Banco de Dados. Marcio de Carvalho Victorino Exercícios SQL

Conceitos de Banco de Dados

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Banco de Dados Modelo Entidade-Relacionamento. Frederico D. Bortoloti

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)

Introdução a Banco de Dados e Access

Integridade dos Dados

MC536 Bancos de Dados: Teoria e Prática

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

Melhorias e Correções Patch's

Banco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos.

Processo de Controle das Reposições da loja

Prof. Marcelo Machado Cunha

Introdução Banco de Dados

Computadores e Sistemas de Informação. Bases de Dados Relacionais (linguagem SQL)

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Núcleo de Pós Graduação Pitágoras

Modelo de Entidade e Relacionamento (MER) - Parte 07

UD 4: Sistema de Gerenciamento de Banco de Dados

Introdução a Banco de Dados e Access

Principal: construir uma base de dados para produção de informações sobre internações hospitalares;

1- Identifique para cada questão abaixo, se o enunciado se refere a View, Stored Procedures, Trigger ou Function. Apenas um por questão.

Modelagem de dados e uso do SGBD MySQL

Banco de Dados I. Introdução. Fabricio Breve

TOTVS BA Guia de Customização Linha Logix

I Requisitos de um modelo conceitual: - clareza (facilidade de compreensão) - exatidão (formal)

SISTEMAS DE INFORMAÇÃO GERENCIAIS

Documento de Requisitos Sistema WEB GEDAI

Algoritmos e Estruturas de Dados II. Trabalho Prático 2

Modelo Entidade-Relacionamento DCC011. Modelo Entidade-Relacionamento. Processo de Projeto de Bancos de Dados

Transcrição:

BANCO DE DADOS Fixação dos conteúdos Integridade Referencial Normalização Exercícios

BANCO DE DADOS X SGBD Banco de Dados: Um "banco de dados" pode ser definido como um conjunto de "dados" devidamente relacionados. Por "dados" podemos compreender como "fatos conhecidos" que podem ser armazenados e que possuem um significado. SGBD: Sistema Gerenciador de Banco de Dados, é o software que trata de todo o acesso ao banco de dados. É um software com recursos específicos para facilitar a manipulação das informações dos bancos de dados e o desenvolvimento de programas aplicativos. Exemplos: Oracle, SQL Server, MySQL, Firebird 2

DIAGRAMA E-R MODELO CONCEITUAL Compostos pelas entidades (retângulo nomeado), atributos e relacionamentos (losango nomeado), bem como suas cardinalidades. 3

DIAGRAMA E-R MODELO LÓGICO - FÍSICO Entidades são as tabelas; Atributos os campos da tabela; Relacionamento permanecem mas não mais nomeados. Atributo identificador geralmente vem a ser a Chave Primária da tabela; Atributos/Campos recebem os tipos de dados que poderão receber; 4

DIAGRAMA E-R MODELO LÓGICO - FÍSICO Imagem 5

INTEGRIDADE REFERENCIAL Quando colocamos uma coluna como chave estrangeira em uma tabela, assumimos responsabilidade com o banco de dados por assim dizer. As colunas pertencentes à chave estrangeira da tabela A devem ter o mesmo domínio das colunas pertencentes à chave primária da tabela B. O valor de uma chave estrangeira em uma tabela A deve ser um valor de chave primária da tabela B, ou então ser nulo. 6

INTEGRIDADE REFERENCIAL Sintetizando: Uma tabela contém uma chave estrangeira, então o valor dessa chave só pode ser: Nulo neste caso pode, pois representa a inexistência de referência para uma linha da tabela. Igual ao valor de alguma chave primária na tabela referenciada. Como seria ter uma tabela com chave estrangeira nula? 7

INTEGRIDADE REFERENCIAL Na linha de Pedro Sergio Doto o valor para CodDepto esta nulo, o que pode significar que ele ainda não está alocado a nenhum departamento, ou foi deslocado de algum departamento. O que importa é que ele não tem departamento assinalado, o que é uma situação valida. O que não pode haver é um valor de chave estrangeira que não exista como chave primária de nenhuma linha da tabela referenciada, no caso a tabela Departamento. 8

INTEGRIDADE REFERENCIAL Na definição de uma chave estrangeira somente podemos nos referenciar a uma chave primária de uma outra tabela? Na criação de uma tabela estrangeira, além de podemos nos referenciar a um campo chave primária de outra tabela, também podemos nos referenciar a uma coluna que tenha sido definida como única, uma chave candidata. Qual a razão da integridade referencial? O que ela implica? Existe um conjunto de regras de operação para um banco de dados que coloca restrições, regras de atualização das tabelas do banco de dados, de forma a garantir e manter a integridade referencial. São elas: 9

INTEGRIDADE REFERENCIAL Deleção Restrita: Ao excluir (deletar) a tabela pai, se ela possuir filhos relacionados (ou seja, se o departamento tiver funcionários), a exclusão é impedida. Isso evita que o bando de dados fique inconsistente, ou seja, linhas de Funcionário com valor de chave estrangeira inexistente como chave primária na tabela associada. Outras opções para garantir a integridadede referências do banco de dados seriam excluir todos os filhos em cascata, fazendo com que todos os funcionários referenciem um departamento-padrão ou fazer com que todos os funcionários fiquem sem departamento. 10

INTEGRIDADE REFERENCIAL Inclusão e Linha Restrita: Ao inserir um funcionário, caso seja obrigatório que ele já possua departamento associado, verifica se ele está relacionado a um departamento existente na tabela Departamento, senão impede a operação. 11

INTEGRIDADE REFERENCIAL Atualização e Linha Restrita: Ao atualizar a chave estrangeira de uma tabela, verifica se existe uma linha da tabela associada que possua como chave primária o novo valor da chave estrangeira, senão impede essa operação. A opção cascata é sempre perigosa de ser utilizada em banco de dados, pois existe o risco de perder todos os dados existentes em uma determinada tabela se optar por apagar as suas linhas que estão associadas a uma determinada linha que será deletada da tabela que possui a chave primária referenciada. 12

NORMALIZAÇÃO Dependência Funcional Parcial Quando os campos dependem parcialmente da Chave Primária da Tabela Dependência Funcional Total Quando os campos dependem totalmente da Chave Primária da Tabela Dependência Transitiva Quando um campo depende de outro campo não chave da Tabela. 13

NORMALIZAÇÃO A normalização permite eliminar atributos: Com mais de um valor Duplicados ou repetidos Que contém dados derivados de outros atributos 14

NORMALIZAÇÃO 1FN (Forma Normal) Uma entidade/tabela está na primeira forma normal se não tem atributos com mais de um valor, nem atributos que ocorrem mais de uma vez. 2FN Uma tabela está na segunda forma normal se está na primeira forma normal e todos os seus atributos não identificadores (chaves primárias) são dependentes do atributo identificador (primary key) desta tabela. Toda tabela que está na 1FN e que possui apenas uma coluna como chave primária já está na 2FN. O mesmo aplica-se para uma tabela que contenha apenas colunas chave primária. 15

NORMALIZAÇÃO 3FN Uma tabela está na terceira forma normal se está na primeira e na segunda forma normal e não contém atributos não chaves dependentes de outros atributos não chaves; Uma dependência funcional transitiva ou indireta acontece quando uma coluna não chave primária depende funcionalmente de outra coluna ou combinação de colunas não chave primária. A passagem à 3FN consta em dividir tabelas de forma a eliminar as dependência transitivas. 16

EXEMPLOS PDF Banco de Dados Normalização Pg 27 30. 17

EXERCÍCIOS DE FIXAÇÃO Relacione as regras às suas respectivas formas normais. 1FN 2FN 3FN ( ) Campos devem depender da chave completa. (Dependência Funcional Total) ( ) Campos com dependência funcional transitiva são realocados ou eliminados no caso de campos calculados. ( )Não deve haver campos multivalorados nas tabelas. 18

EXERCÍCIOS DE FIXAÇÃO Em relação a Tabela 1 a seguir marque V nas observações corretas em relação a normalização da tabela e F nas observações incoerentes e/ou incorretas: CRM Médico DtConsulta Hrconsulta Valor Especialidade 12345 João 22/11/2010 10:30 R$ 50,00 Clínico 23456 Mariana 22/11/2010 08:20 R$ 50,00 Ortopedista 34567 Josefa 22/11/2010 08:20 R$ 50,00 Clínico Tabela 1 - Controle de consultas em uma clínica médica a partir da tabela MÉDICO. ( ) A tabela fere a primeira forma normal pois permite atributos multivalorados no campo Especialidade. ( ) O campo Valor possui dependência funcional transitiva e, portanto, precisa ser eliminado da tabela, pois fere a 3ª forma normal. ( ) O campo CRM não poderá ser chave primária pois ao agendar mais de uma consulta para o mesmo médico ele permitirá repetição. ( ) A tabela possui anomalias de inserção pois não permite inserir mais de uma consulta para o mesmo médico sem sobrescrever a consulta anterior. 19

EXERCÍCIOS DE FIXAÇÃO Ainda em relação a Tabela 1 acima, marque com V as afirmações verdadeiras sobre os processos necessário para normalizar a tabela e com F as falsas: ( ) É necessário a criação de uma chave primária na tabela. ( ) É necessário separar o campo Especialidade em outra tabela. ( ) Os campos Data, Hora e Valor da consulta podem ser eliminados. ( ) Será necessário criar a tabela consulta. Segue abaixo algumas das dependências funcionais da Tabela 1, após verificar quais modificações são necessárias para que o Esquema esteja na 3FN (3ª Forma Normal), diga usa FN atual e mostre como após a Normalização. CRM Médico CRM Especialidade Médico DtConsulta, HrConsulta Médico, Especialidade Valor 20