MODELO RELACIONAL E RESTRIÇÕES DE INTEGRIDADE



Documentos relacionados
Prof.: Clayton Maciel Costa

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

MODELO RELACIONAL - UFMA

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

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

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

Modelo de Dados. Modelos Conceituais

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

CICLO DE VIDA DE UM BD

INTRODUÇÃO E CONCEITOS BÁSICOS. Prof. Ronaldo R. Goldschmidt

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

GBC043 Sistemas de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva UFU/FACOM

O modelo de dados relacional e as restrições de um banco de dados relacional

Disciplina de Banco de Dados Parte V

Banco de Dados. Modelo Relacional. Prof. Enzo Seraphim

Prof. Ronaldo R. Goldschmidt. geocities.yahoo.com.br/ronaldo_goldschmidt

Bases de Dados. Parte III: O Modelo Relacional

Prof. Alexandre Unterstell Banco de Dados I

UNIVERSIDADE FEDERAL DO MARANHÃO - UFMA. Banco de Dados II. Integridade. Carlos Eduardo Portela Serra de Castro

Faculdade Pitágoras 24/10/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

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

Modelo Relacional. Aécio Costa

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

Modelo Relacional. Modelo Relacional. Conceitos Gerais: Relação

Profa. Daniela Barreiro Claro

Esquema da Relação. Modelo Relacional. Instância da Relação. Exemplo. Uma base de dados é uma colecção de uma ou mais relações com nomes distintos

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

MC536. Modelo Relacional

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

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

Banco de Dados - Senado

Persistência e Banco de Dados em Jogos Digitais

Banco de Dados Lista de Exercícios 01

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Banco de Dados Capítulo 2: Modelo Relacional. Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD

Modelagem de Banco de Dados através do ERwin

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

Correção da 1a Prova de GBD1 2009/2. Profa. Sandra de Amo

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro.

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

Chave alternativa. Angélica Toffano Seidel Calazans Abordagem Relacional

Banco de Dados Transformação Modelo Conceitual para Lógico Relacional. Prof. Juliano Lucas Gonçalves

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

LINGUAGEM DE BANCO DE DADOS

AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

GEE051 - Banco de Dados (BD) Plano de Curso. Ilmério Reis da Silva ilmerio@facom.ufu.br UFU/FACOM /2

PHP INTEGRAÇÃO COM MYSQL PARTE 1

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes

4.6. SQL - Structured Query Language

Integridade dos Dados

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

INF70 Gerenciamento de Banco de Dados 2 Plano de Curso e Introdução

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

1. Introdução ao Modelo Entidade-Relacionamento (MER)

Banco de Dados. Aula 7 - Prof. Bruno Moreno 13/09/2011

MODELO RELACIONAL PARTE 2

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

Aula VI -MODELO RELACIONAL

Capitulo 2. Prof.º Espc. Fábio Margarito Martins de Barros - Tecnologia de banco de dados

Correção da 1a Prova de GBD1 2010/1. Profa. Sandra de Amo

SQL. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática

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

BANCO DE DADOS CONCEITOS BÁSICOS

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados

Modelagem de Dados. Aula 02 Arquitetura e Álgebra Relacional. Maxwell Anderson

MODELO DE BANCO DE DADOS RELACIONAL

Banco de Dados I. Projeto de Banco de Dados e o Modelo E-R. Fabricio Breve

UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BANCO DE DADOS I

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

Modelo Relacional. Modelo Relacional. Tabelas

BCD29008 Banco de dados

INTRODUÇÃO AO MODELO RELACIONAL

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

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

Aula 6 BD1 Modelo Relacional. Profa. Elaine Faria UFU

Conceitos Básicos de Banco de Dados

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

BANCO DE DADOS. Araújo Lima. Ago / Araújo

Banco de Dados. Aula 6 - Prof. Bruno Moreno 09/09/2011

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

modelo introduzido por E. F. Codd Meados da década de 70: protótipos. INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78)

Modelo Relacional Prof. Msc Denival A. dos Santos

Linguagem SQL Sub-linguagem DDL

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

Modelo Relacional. Modelo Relacional. Modelo Relacional. Banco de Dados. Modelo Relacional. Modelo Relacional

Banco de Dados. Modelo de Dados Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Ministério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul

Modelo Relacional. Relacionamento. Processo de Projeto de. Programa. Modelo Entidade Relacionamento

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

Administração de Bancos de Dados

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO (UFRPE)

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

Introdução ao Modelo Relacional

Revisão de Banco de Dados

Técnicas e Linguagens para Banco de Dados I

Banco de Dados I. Aula 9 - Prof. Bruno Moreno 20/09/2011

Transcrição:

MODELO RELACIONAL E RESTRIÇÕES DE Prof. Ronaldo R. Goldschmidt Definição: O Modelo Relacional representa o banco de dados como uma coleção de relações. Fundamenta-se na Teoria dos Conjuntos. Informalmente: Cada relação se parece com uma tabela de valores. Existem SGBDs próprios para gerenciamento de Bancos de Dados Relacionais (Bancos de Dados baseados no Modelo Relacional) : SGBDRs. Exs: Oracle, SQL Server, PostgreSQL, MYSQL, etc 1

Recordação: Uma relação é o nome dado a qualquer subconjunto de um produto cartesiano entre dois ou mais conjuntos. Exemplo: Sejam os seguintes domínios (conjuntos de valores atômicos - indivisíveis): D 1 = {X/X é CPF de aluno da Disciplina Banco de Dados} D 2 = {X/X é de aluno da Disciplina Banco de Dados} Forma Explícita: D 1 = {97446262753, 94834568123, 52834567845} cardinalidade do domínio D 1 = 3 D 2 = { José,, } cardinalidade do domínio D 2 = 3 Produto Cartesiano: D 1 D 1 = { D 1 = D 1 x D 2 (97446262753, José ), (97446262753, ), (97446262753, ), (94834568123, José ), (94834568123, ), (94834568123, ), (52834567845, José ), (52834567845, ), (52834567845, ) } Relação: R D 1 R = { (97446262753, José ), (94834568123, ), (52834567845, )} Aluno(CPF, ) é o esquema da relação R=ALUNO (97446262753, José ) é uma instância/tupla da relação ALUNO CPF e são atributos da relação ALUNO. Cada atributo é o nome de um papel desempenhado por algum domínio no esquema da relação. 2

Relação: R D 1 R = { (97446262753, José ), (94834568123, ), (52834567845, )} Representação Tabular da Relação ALUNO CPF 97446262753 94834568123 52834567845 NOME José Aridade = 2 Cardinalidade = 3 Operações Fundamentais sobre a relação: Inclusão de novas tuplas Exclusão de tuplas existentes Alteração de tuplas existentes Consulta a tuplas existentes Notação emática (Genérica) Esquema de uma relação R de grau (aridade) n é indicado por R(A 1,A 2,,A n ) Uma tupla t em uma relação R é indicada por <v 1,v 2,,v n > onde vi corresponde ao valor do atributo Ai t[a i ] ou t.a i ou t[i] referem-se ao valor v i do atributo A i na tupla t Grau ou Aridade = 4 Cardinalidade = 3 Considerando a tupla <,,, >: t[nome]=< >, t[,]=<,>, t[,]=<, > 3

a) Restrições de Domínio: O valor de cada atributo A i em uma tupla deve ser um valor atômico do domínio dom(a i ). b) Restrições de Chave: Todas as tuplas de uma relação devem ser distintas. Definição: Um conjunto de atributos de uma relação R é uma superchave (SK- SuperKey) se para quaisquer duas tuplas distintas t i e t j de R então t i [SK] t j [SK] São exemplos de superchaves: {}, {, }, {, }, {, }, etc Não são superchaves: {}, {}, {}, {, } Definição: Uma chave (K-Key) de uma relação R é uma superchave onde, ao se remover qualquer atributo, o conjunto de atributos restantes não será superchave Uma chave é uma superchave mínima, ou seja, não podemos remover qualquer atributo e ainda manter a unicidade (não repetição) de valores na relação resultante. Id 222 999 Exs de SKs: {}, {, }, {, Id}, {, }, {,,, }, etc Não são superchaves: {}, {}, {}, {, } São exemplos de chaves: {}, {Id} Não são chaves: {, }, {, }, {Id, } 4

Definição: Cada uma das chaves de uma relação R é denominada chave candidata Id 222 999 São exemplos de chaves candidatas: {}, {Id} Definição: A chave candidata cujos valores são usados para identificar unicamente (sem repetição) as tuplas de uma relação é denominada chave primária PK primary key. No exemplo: Aluno (, Id,,, ), é PK. PKs Representação sublinhada. b.1) Restrição de Integridade de Entidade (RIE): Chaves primárias não podem conter valor NULL. A tupla 2 viola a RIE Observação Importante: A RIE é assegurada pelos próprios SGBDRs Chaves primárias podem ser compostas (por mais de um atributo). A RIE também se aplica em PKs compostas. Ex: Cliente TipoDoc RG CNH Numero A tupla 3 viola a RIE 222 5

Definição: Uma chave estrangeira (FK Foreign Key) em uma relação R é um conjunto de atributos que referenciam a chave primária de outra relação Aluno CodCurso 02 Curso Cod Sigla Informática INF 02 Direito DIR O atributo CodCurso é FK na relação Aluno pois referencia a PK da relação Curso (Cod). b.2) Restrição de Integridade Referencial (RIR): Os valores de uma chave estrangeira ou são null ou existem na tabela referenciada. Aluno CodCurso 10 Curso Cod 02 Informática Direito Sigla INF DIR A tupla 3 da relação Aluno viola a RIR pois o valor 10 não existe na relação Curso. A tupla 2 da relação Aluno não viola a RIR pois o valor do CodCurso é desconhecido no momento (A aluna não está matriculada em nenhum curso). Observação importante: A RIR também é assegurada pelos próprios SGBDRs 6

Leituras Recomendadas Cap. 5 Elmasri e Navathe Cap. 2 Silberschatz e Korth Atividades Práticas Todos os exercícios do cap. 5 Elmasri e Navathe Identificação dos componentes do BDR fornecido como exemplo 7