Bases de Dados. Dependências funcionais. Menos tabelas com mais dados? loan_number amount L L

Tamanho: px
Começar a partir da página:

Download "Bases de Dados. Dependências funcionais. Menos tabelas com mais dados? loan_number amount L L"

Transcrição

1 Bases de Dados Dependências funcionais Menos tabelas com mais dados? borrower customer_id loan_number L L L-200 loan loan_number amount L L customer_id loan_number amount L L L

2 Mais tabelas com menos dados? employee_id employee_name telephone_number start_date Kim Kim employee_id employee_name Kim Kim employee_name telephone_number start_date t t Kim Kim Perda de informação (lossy decomposition) employee_id employee_name Kim Kim employee_name telephone_number start_date Kim Kim employee_id employee_name telephone_number start_date Kim Kim Kim Kim

3 Redundância e anomalias customer_id customer_name branch_name branch_city Smith Downtown Brooklyn Johnson Perryridge Washington Hayes Perryridge Washington Jones Downtown Brooklyn Redundância mesmos factos em vários registos Anomalia de actualização e se agência muda de cidade? Anomalia de inserção necessário saber dados da agência para inserir cliente Anomalia de remoção se apagarmos Smith e Jones perdemos aos dados da agência de Perryridge 5 Decomposição customer_id customer_name branch_name Smith Downtown Johnson Perryridge Hayes Perryridge Jones Downtown Um facto = um tuplo Junção recupera informação Maior esforço computacional Melhor utilização do espaço em disco Ausência de anomalias branch_name Downtown Perryridge branch_city Brooklyn Washington 6 3

4 Chaves Seja R o esquema de uma relação r exemplo: para r(a,b,c,d) o esquema é R = ABCD Seja K um subconjunto de R exemplo: K = AB K é uma super-chave em R se para qualquer par de tuplos t 1 e t 2 t 1 [K] = t 2 [K] t 1 = t 2 7 Dependências funcionais Seja R o esquema de uma relação r (p.ex. R = ABCD) Sejam α R e β R dois subconjuntos de R exemplo: α = AB e β = CD α β é uma dependência funcional em R se para qualquer par de tuplos t 1 e t 2 t 1 [α] = t 2 [α] t 1 [β ] = t 2 [β ] 8 4

5 Dependências funcionais exemplos customer_id loan_number amount L L L bor_loan(customer_id, loan_number, amount) customer_id customer_id customer_id, loan_numbernumber amount customer_id, loan_number customer_id, loan_number, amount loan_number amount 9 Dependências funcionais Podemos exprimir dependências triviais customer_id customer_id Podemos exprimir dependências de chaves customer_id, loan_number customer_id, loan_number, amount Podemos exprimir outro tipo de dependências loan_number number amount 10 5

6 Super-chave e chave candidata K é uma super-chave de uma relação r com esquema R se e só se K R K é uma chave candidata de uma relação r com esquema R se e só se K R, e não existir α K tal que α R 11 Utilização de Dependências Funcionais notas Nota 1: uma relação pode aparentar obedecer a uma dada dependência quando isso só acontece por acaso p.ex.: pode acontecer que não existam 2 empréstimos com quantias iguais sugere a dependência: amount loan_number (errado) loan_number amount L L L

7 Utilização de Dependências Funcionais notas Nota 2: uma dependência funcional α β é trivial se β α exemplos customer_id customer_id customer_id, loan_number customer_id customer_id, loan_number loan_number customer_id, loan_number customer_id, loan_number 13 Utilização de Dependências Funcionais notas Nota 3: é possível deduzir outras dependências funcionais a partir de um dado conjunto F p.ex.: se A B e B C então é certo que A C A C chama-se uma dependência transitiva ao conjunto de todas as dependências F dadas e todas as que são possíveis deduzir a partir de F chama-se F + F + é também designado por fecho de F 14 7

8 Axiomas de Armstrong Transitividade se α β e β γ, então α γ Reflexividade se β α, então α β Aumento se α β, então γα γβ 15 Axiomas de Armstrong exemplo R = (A, B, C, G, H, I) F = { A B, A C, CG H, CG I, B H } alguns dos elementos de F + A H transitividade de A B e B H AG I aumenta-se A C com G e obtém-se AG CG transitividade de AG CG com a existente CG I CG HI aumenta-se CG I com CG e obtém-se CG CGI aumenta-se CG H com I e obtém-se CGI HI transitividade de CG CGI e CGI HI 16 8

9 Como calcular F + Algoritmo iniciar F + = F repetir para cada dependência funcional f em F + aplicar reflexividade e aumento a f incluir as dependências resultantes em F + para cada par de dependências f 1 e f 2 em F + se houver transitividade em f 1 e f 2 então incluir a dependência resultante em F + até F + não sofrer alterações 17 Axiomas de Armstrong se α β e β γ, então α γ se β α, então α β se α β, então γα γβ (transitividade) (reflexividade) (aumento) Os axiomas de Armstrong não geram dependências erradas (soundness) são capazes de gerar todas as dependências (completeness) Mas há outras regras que também dão jeito... união, decomposição, pseudo-transitividade 18 9

10 União União se α β e α γ, então α β γ demonstração aumenta-se α β com γ e obtém-se αγ β γ aumenta-se α γcom α e obtém-se α αγ transitividade de α αγe αγ β γ 19 Decomposição Decomposição se α β γ, então α β e α γ demonstração reflexividade diz-nos que β γ β reflexividade diz-nos que β γ γ transitividade de α βγ com β γ βdá α β transitividade de α β γ com β γ γ dá α γ 20 10

11 Pseudo-transitividade Pseudo-transitividade se α β e β γ δ, então α γ δ demonstração aumenta-se α β com γ e obtém-se αγ β γ transitividade de αγ β γ com β γ δdá αγ δ 21 Fecho de atributo Estas regras permitem deduzir outras dependências Mas se um atributo α determina o valor de β... α β...e β determina outros atributos via β γ...será possível deduzir todos os atributos determinados por α? Chama-se a α + o fecho do atributo α 22 11

12 Como calcular α + Abordagem 1 calcular F + e considerar só as dependências α unir todos os atributos dependentes de α Abordagem 2 sem calcular F + result = α while (changes to result) do for each γ βin F do if γ result then result := result U β 23 Como calcular α + exemplo R = (A, B, C, G, H, I) F = { A B, A C, CG H, CG I, B H } Calcular (AG) + result = AG A B tem A result logo result = AGB A C tem A result logo result = AGBC CG H tem CG result logo result = AGBCH CG I tem CG result logo result = AGBCHI 24 12

13 Utilização de α + O fecho α + de um atributo α pode ser usado para saber se α é uma super-chave nesse caso α + contém todos os atributos de R saber se uma dada α β existe em F +, sem calcular F + existe se β α + permite calcular F + por outra via para cada α R calcula-se α + para cada S α + diz-se que α S o conjunto de todos os α S é F + 25 Utilização de α + exemplo R = (A, B, C, G, H, I) F = { A B, A C, CG H, CG I, B H } Já vimos que (AG) + = AGBCHI contém todos os atributos de R, logo é super-chave Será que A ou G são super-chaves? teríamos que calcular A + e G

1FN: os atributos de uma relação têm que ser atómicos. FNBC: para qualquer dependência funcional α β numa relação, ou α β é trivial ou α é super-chave

1FN: os atributos de uma relação têm que ser atómicos. FNBC: para qualquer dependência funcional α β numa relação, ou α β é trivial ou α é super-chave Bases de Dados Dependências funcionais Formas Normais revisão 1FN: os atributos de uma relação têm que ser atómicos FNBC: para qualquer dependência funcional α β numa relação, ou α β é trivial ou α é super-chave

Leia mais

Bases de Dados. Normalização. Formas Normais. 1FN : atomicidade dos atributos. 2FN : proíbe dependência parcial de chaves

Bases de Dados. Normalização. Formas Normais. 1FN : atomicidade dos atributos. 2FN : proíbe dependência parcial de chaves Bases de Dados Normalização Formas Normais 1FN : atomicidade dos atributos 2FN : proíbe dependência parcial de chaves 3FN e FNBC: impõe dependências a partir de chaves 2 1 1FN Definição um esquema relacional

Leia mais

Dependências funcionais e normalização

Dependências funcionais e normalização Dependências funcionais e normalização 1 a Forma Normal 2 a Forma Normal Objectivos na Concepção de Bases de Dados Dependências funcionais Decomposição Forma Normal de Boyce-Codd 3 a Forma Normal Dependências

Leia mais

Bases de Dados 2012/2013 Dependências Funcionais e Normalização. Helena Galhardas 2013 IST. Bibliografia

Bases de Dados 2012/2013 Dependências Funcionais e Normalização. Helena Galhardas 2013 IST. Bibliografia Bases de Dados 2012/2013 Dependências Funcionais e Normalização Helena Galhardas Bibliografia Raghu Ramakrishnan, Database Management Systems 3rd ed, Cap 19 C. J. Date, An Introduction to Database Systems,

Leia mais

Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal

Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal Capítulo 6: Desenho de Bases de Dados Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal Dependências multivalor

Leia mais

Bases de Dados. Conversão para Modelo Relacional. Modelo Entidade-Associação. IST DEI Bases de Dados

Bases de Dados. Conversão para Modelo Relacional. Modelo Entidade-Associação. IST DEI Bases de Dados Bases de Dados Conversão para Modelo Relacional Modelo Entidade-Associação 2 1 Conversão de entidades Entidade forte converte-se numa tabela loan = (loan_number, amount) atributos simples mantêm-se chave

Leia mais

Álgebra Relacional operações adicionais. Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li?

Álgebra Relacional operações adicionais. Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? Bases de Dados Álgebra Relacional operações adicionais Divisão ( ) Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? exemplo: nomes dos clientes

Leia mais

MySQL & PHP. MySQL & PHP ODBC ODBC/C

MySQL & PHP. MySQL & PHP ODBC ODBC/C MySQL & PHP mysql query Realiza uma consulta MySQL resource mysql query(string query[,resource link identifier]) mysql query() envia uma consulta para a base de dados activa no servidor da ligação presente

Leia mais

Especialização / generalização. Especialização top-down a partir da super-classe identificam-se as subclasses

Especialização / generalização. Especialização top-down a partir da super-classe identificam-se as subclasses Bases de Dados Extensões ao Modelo E-A Especialização / generalização Especialização top-down a partir da super-classe identificam-se as subclasses Generalização bottom-up a partir das sub-classes identifica-se

Leia mais

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados Bases de Dados Modelo Entidade-Associação Exemplo do banco branch account depositor loan borrower customer 2 1 Exemplo do banco branch account depositor loan borrower customer Entidades Associações 3 Exemplo

Leia mais

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge Bases de Dados Álgebra Relacional Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge σ branch_name = Perryridge (loan) 2 1 Outros exemplos de

Leia mais

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. branch. account depositor. loan. borrower customer. IST DEI Bases de Dados Bases de Dados Modelo Entidade-Associação Exemplo do banco branch account depositor loan borrower customer 2 1 Exemplo do banco branch account depositor loan borrower customer 3 Bases de Dados Entidades

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Sumário Linguagem SQL 1 Operações com strings operador like Exemplo: nomes dos clientes cuja rua possui a sequência Main

Leia mais

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os tuplos que satisfazem uma condição. exemplo: empréstimos da agência de Perryridge

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os tuplos que satisfazem uma condição. exemplo: empréstimos da agência de Perryridge Bases de Dados Álgebra Relacional Selecção (σ) Seleccionar os tuplos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge σ branch_name = Perryridge (loan) 2 1 Outros exemplos de selecção

Leia mais

Ordenação de tuplos order by

Ordenação de tuplos order by Bases de Dados Elementos da linguagem SQL Ordenação de tuplos order by A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de

Leia mais

A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de Perryridge

A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de Perryridge Bases de Dados Elementos da linguagem SQL Ordenação de tuplos orderby A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de

Leia mais

Bases de Dados. Junção de relações. Junção de relações

Bases de Dados. Junção de relações. Junção de relações Bases de Dados Junção de relações Junção de relações Tipicamente usadas na cláusula from SQL oferece várias possibilidades condição da junção determina quais são os atributos a comparar tipo de junção

Leia mais

Bases de Dados. Modelo Entidade-Associação. Processo de desenvolvimento. descrição do tema. características do domínio. requisitos funcionais.

Bases de Dados. Modelo Entidade-Associação. Processo de desenvolvimento. descrição do tema. características do domínio. requisitos funcionais. Bases de Dados Modelo Entidade-Associação Processo de desenvolvimento características do domínio requisitos funcionais descrição do tema desenho conceptual modelo E-A conversão p/ modelo relacional modelo

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language) Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

Bases de Dados. Conversão para Modelo Relacional. Diagrama E-A. IST DEI Bases de Dados

Bases de Dados. Conversão para Modelo Relacional. Diagrama E-A. IST DEI Bases de Dados Bases de Dados Conversão para Modelo Relacional Diagrama E-A 2 1 Conversão de entidades Entidade forte converte-se numa tabela loan (loan_number, amount) atributos simples mantêm-se chave da tabela é a

Leia mais

Dependências Funcionais e Formas Normais. Formas Normais Pedro Sousa 1

Dependências Funcionais e Formas Normais. Formas Normais Pedro Sousa 1 Dependências Funcionais e Formas Normais Formas Normais Pedro Sousa 1 Introdução As dependências funcionais e as formas normais estabelecem critérios de qualidade de desenho no modelo Relacional. Permitem

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language) Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. IST DEI Bases de Dados

Bases de Dados. Modelo Entidade-Associação. Exemplo do banco. IST DEI Bases de Dados Bases de Dados Modelo Entidade-Associação Exemplo do banco 2 1 Exemplo do banco Entidade Associação 3 Exemplo do banco Conceptualmente branch account depositor loan borrower customer 4 2 Exemplo do banco

Leia mais

Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas

Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Capítulo 4: SQL Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Junções Vistas Modificação da Base

Leia mais

. Um modelo que represente fielmente a realidade. Um modelo capaz de responder às funcionalidades que se pretendem

. Um modelo que represente fielmente a realidade. Um modelo capaz de responder às funcionalidades que se pretendem 3. Teoria da Normalização Ao modelar a informação procura-se:. Um modelo que represente fielmente a realidade. Um modelo capaz de responder às funcionalidades que se pretendem Queremos obter um modelo

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Sumário Linguagem SQL 2 História Princípio dos

Leia mais

Banco de Dados - INE Projeto de Banco de Dados Relacionais. Prof. Mario Dantas

Banco de Dados - INE Projeto de Banco de Dados Relacionais. Prof. Mario Dantas Banco de Dados - INE 5323 Projeto de Banco de Dados Relacionais Prof. Mario Dantas Projeto de Banco de Dados Relacionais -Armadilhas - Decomposição - Dependências Funcionais e Normalização - Dependências

Leia mais

Uma base de dados está num estado de integridade se contém apenas dados válidos. Os dados armazenados devem estar de acordo com a realidade

Uma base de dados está num estado de integridade se contém apenas dados válidos. Os dados armazenados devem estar de acordo com a realidade 2. Modelo Relacional... 2.1. Estrutura de Dados Relacional 2.2. Álgebra Relacional 2.3. Linguagens Relacionais 2.4. Restrições de integridade Uma base de dados está num estado de integridade se contém

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language) Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

DCC/UFRJ Bancos de Dados IPedro Manoel da Silveira. Projeto de BD Relacionais. Objetivos do Projeto de BD. PMS v2bancos de Dados Relacionais 1

DCC/UFRJ Bancos de Dados IPedro Manoel da Silveira. Projeto de BD Relacionais. Objetivos do Projeto de BD. PMS v2bancos de Dados Relacionais 1 DCC/UFRJ Pedro Manoel Bancos de Dados Relacionais Projeto Projeto de de Bancos Bancos de de Dados Dados Relacionais Relacionais Projeto de BD Relacionais Problema: Como distribuir os dados de um sistema

Leia mais

Introdução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos

Introdução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos Bases de Dados Funções e procedimentos Introdução às funções e procedimentos SQL suporta funções e procedimentos úteis com tipos de dados específicos p.ex. objectos geométricos, imagens intersecção de

Leia mais

NORMALIZAÇÃO. Lílian Simão Oliveira

NORMALIZAÇÃO. Lílian Simão Oliveira NORMALIZAÇÃO Lílian Simão Oliveira Normalização Normalização de dados : decomposição de esquemas para minimizar redundância e evitar anomalias de atualização, inserção e remoção. Projeto conceitual bem

Leia mais

Forma Normal de Boyce-Codd

Forma Normal de Boyce-Codd Teste de Preservação de Dependências Para verificar se α β é preservada na decomposição R em R 1, R 2,..., R n aplica-se o seguinte teste: res := α enquanto (houver alterações em res) faz para cada R i

Leia mais

Bases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção.

Bases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção. Bases de Dados Algoritmos Custo de operação Algoritmos de selecção Algoritmo de ordenação Algoritmos de junção Outras operações Materialização e pipelining 2 1 Bases de Dados Algoritmos de selecção Algoritmos

Leia mais

Processo de desenvolvimento. Compreender o domínio interagir com utilizadores e recolher requisitos Desenho conceptual

Processo de desenvolvimento. Compreender o domínio interagir com utilizadores e recolher requisitos Desenho conceptual Bases de Dados Modelo Entidade-Associação Processo de desenvolvimento Compreender o domínio interagir com utilizadores e recolher requisitos Desenho conceptual modelo Entidade-Associação Requisitos funcionais

Leia mais

Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal

Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal Capítulo 6: Desenho de Bases de Dados Objectivos com o Desenho de Bases de Dados Dependências funcionais 1ª Forma Normal Decomposição Forma Normal de Boyce-Codd 3ª Forma Normal Dependências multivalor

Leia mais

Databases. Dependências Funcionais

Databases. Dependências Funcionais Databases Dependências Funcionais P. Serendero, 2011-13 Referências e exemplos tirados de diversas fontes, excetuando aqueles relacionados com embarcações Dependências Funcionais (DF) Uma Base de Dados,

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Stored Procedures e Triggers

Sistemas de Informação e Bases de Dados 2012/2013. Stored Procedures e Triggers Sistemas de Informação e Bases de Dados 2012/2013 Stored Procedures e Triggers Alberto Sardinha Bibliografia MSDN http://msdn.microsoft.com 1 Funções e Procedimentos SQL suporta funções e procedimentos

Leia mais

Bases de Dados. Parte VIII: Normalização

Bases de Dados. Parte VIII: Normalização Bases de Dados MBI/MI/LCC/LEG/LERSI/LMAT Parte VIII Normalização 1 Desenho de BDs Relacionais Algumas questões sobre o desenho de BDs relacionais: Como é que se desenha uma boa BD relacional? Qual é o

Leia mais

Bases de Dados. Parte VII Normalização

Bases de Dados. Parte VII Normalização Bases de Dados Parte VII Normalização 1 Desenho de BDs Relacionais! Algumas questões sobre o desenho de BDs relacionais:! Como é que se desenha uma boa BD relacional?! Qual é o critério para quantificar

Leia mais

INF1383 -Bancos de Dados

INF1383 -Bancos de Dados INF1383 -Bancos de Dados Prof. Sérgio Lifschitz DI PUC-Rio Eng. Computação, Sistemas de Informação e Ciência da Computação INTRODUÇÃO À TEORIA DA NORMALIZAÇÃO PROJETO LÓGICO DE BANCOS DE DADOS Slide 1-34

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Restrições de Integridade em SQL

Sistemas de Informação e Bases de Dados 2012/2013. Restrições de Integridade em SQL Sistemas de Informação e Bases de Dados 2012/2013 Restrições de Integridade em SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Captura e Tratamento das RIs

Leia mais

Forma Normal de Boyce Codd 3 a Forma Normal

Forma Normal de Boyce Codd 3 a Forma Normal Normalização: Forma Normal de Boyce Codd 3 a Forma Normal Fernando Lobo Base de Dados, Universidade do Algarve 1 / 38 Normalização O objectivo é obter esquemas relacionais sem redundância e sem anomalias.

Leia mais

Banco de Dados - Senado

Banco de Dados - Senado Banco de Dados - Senado Normalização Material preparado: Prof. Marcio Vitorino Normalização Normalização de dados: decomposição de esquemas para evitar anomalias de atualização. Bom desig evita redundância

Leia mais

Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações

Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações Capítulo 5: Integridade e Segurança Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações 1 Restrições ao Domínio As restrições de integridade impõem-se para garantir

Leia mais

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

Banco de Dados I Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 4) Clodis Boscarioli Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional (Aula 4) Clodis Boscarioli Agenda: Dependências Funcionais; Dependências Funcionais e Projeto de Banco de Dados Relacional;

Leia mais

Banco de Dados. Dependências Funcionais e Normalização de Bancos de Dados Relacionais. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Banco de Dados. Dependências Funcionais e Normalização de Bancos de Dados Relacionais. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Banco de Dados Dependências Funcionais e Normalização de Bancos de Dados Relacionais João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Abordagens de Projeto Top down Bottom up Iniciar com o agrupamento

Leia mais

Bases de Dados. Optimização de planos de execução. Plano de execução

Bases de Dados. Optimização de planos de execução. Plano de execução Bases de Dados Optimização de planos de execução Plano de execução O plano de execução define a sequência de operações e o algoritmo para cada operação 2 1 Plano de execução Mas atenção: escolher o algoritmo

Leia mais

Bases de Dados. Revisão da matéria. Programa

Bases de Dados. Revisão da matéria. Programa Bases de Dados Revisão da matéria Programa Modelação modelo Entidade Associação modelo e álgebra relacionais Implementação SQL básico e avançado desenvolvimento de aplicações normalização Optimização ficheiros

Leia mais

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join Bases de Dados Algoritmos para junção Algoritmos para junções Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join A escolha

Leia mais

Redundância é a causa de vários problemas com esquemas relacionais: armazenamento redundante, anomalias de inserção, de exclusão e de atualização.

Redundância é a causa de vários problemas com esquemas relacionais: armazenamento redundante, anomalias de inserção, de exclusão e de atualização. 1 Redundância é a causa de vários problemas com esquemas relacionais: armazenamento redundante, anomalias de inserção, de exclusão e de atualização. Restrições de integridade, particularmente dependências

Leia mais

As restrições de integridade garantem a consistência da BD exemplos

As restrições de integridade garantem a consistência da BD exemplos Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: os números de conta são únicos RI 2: a cidade de uma agência

Leia mais

Capítulo 3 Modelo Relacional

Capítulo 3 Modelo Relacional Capítulo 3 Modelo Relacional Modelo Relacional Estrutura dos Bancos de Dados Relacionais Álgebra Relacional Cálculo Relacional de Tuplas Cálculo Relacional de Domínio Operações de Álgebra Relacional Estendida

Leia mais

Modelo Relacional. Josino Rodrigues

Modelo Relacional. Josino Rodrigues Modelo Relacional Josino Rodrigues Modelo Relacional Chave Primária Atributos PILOTO Num-cad Nome CPF Endereço 0101 João 123456 Recife Tuplas 0035 José 234567 São Paulo... 0987 Pedro 567890 Recife 2 Chave

Leia mais

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

Banco de Dados I Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 5) Clodis Boscarioli Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional (Aula 5) Clodis Boscarioli Agenda: Normalização: Conceitos Gerais; Definições; 1NF; 2NF; 3NF; BCNF. Exercício de fixação.

Leia mais

Dois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita

Dois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita Bases de Dados Algoritmos de processamento Custo de operação Dois parâmetros essenciais t T tempo de transferência de um bloco assume-se igual para operações de leitura e escrita t S tempo de localização

Leia mais

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap.

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap. Bases de Dados 2013/2014 Álgebra Relacional Helena Galhardas Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 4 1 1 Álgebra Relacional Sumário 2 Linguagens Formais de Interrogação Relacionais

Leia mais

Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas

Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Capítulo 4: SQL Linguagem de Definição de Dados Estrutura básica Operações com conjuntos Funções de agregação Valores nulos Subconsultas embebidas Relações derivadas Junções Vistas Modificação da Base

Leia mais

Projeto de Bancos de Dados Relacional- Normalização. Vantagens da decomposição Normalização

Projeto de Bancos de Dados Relacional- Normalização. Vantagens da decomposição Normalização Projeto de Bancos de Dados Relacional- Normalização Vantagens da decomposição Normalização Decomposição sem Perdas; Teorema de HEATH; Eliminar Dados Duplicados; Chaves (Candidata, Primária e Estrangeira);

Leia mais

Universidade da Beira Interior Cursos: Engenharia Informática, Ensino da Informática, Matemática Aplicada e Matemática /Informática

Universidade da Beira Interior Cursos: Engenharia Informática, Ensino da Informática, Matemática Aplicada e Matemática /Informática 5. Normalização avançada 5.1. Dependências Multivalor (DM) As dependências funcionais são um caso particular de um tipo mais geral de dependências lógicas, entre os atributos de uma relação, que são as

Leia mais

Aula 12 BD1 Dependências Funcionais e Normalização. Profa. Elaine Faria UFU

Aula 12 BD1 Dependências Funcionais e Normalização. Profa. Elaine Faria UFU Aula 12 BD1 Dependências Funcionais e Normalização Profa. Elaine Faria UFU - 2018 Refinamento de Esquema Problemas causados pela redundância Armazenamento redundante Algumas informações são armazenadas

Leia mais

Normalização: 3 a Forma Normal

Normalização: 3 a Forma Normal Normalização: 3 a Forma Normal Fernando Lobo Base de Dados, aula 10 1 / 14 3 a Forma Normal: Motivação Por vezes a decomposição para BCNF não preserva as DF s da relação original. Nesses casos, não devemos

Leia mais

GBC043 Sistemas de Banco de Dados Normalização de Relações em Projeto de BD

GBC043 Sistemas de Banco de Dados Normalização de Relações em Projeto de BD GBC043 Sistemas de Banco de Dados Normalização de Relações em Projeto de BD Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Projeto de BD Relacionais Método 1: mapeamento

Leia mais

Refinamento de Esquemas e Normalização

Refinamento de Esquemas e Normalização Refinamento de Esquemas e Normalização 6-1 Os Maus da Redundância Redundância é a raiz de diversos problemas associados com esquemas relacionais: armazenamento, anomalias de inserção, atualização e remoção

Leia mais

Bases de Dados. Restrições de integridade. Restrições de integridade. As restrições de integridade garantem a consistência da BD exemplos

Bases de Dados. Restrições de integridade. Restrições de integridade. As restrições de integridade garantem a consistência da BD exemplos Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: o saldo de uma conta não pode ser null RI 2: nenhuma conta pode

Leia mais

Roteiro. Normalização. BCC321 - Banco de Dados I. Ementa. Para que serve a normalização? Posicionamento

Roteiro. Normalização. BCC321 - Banco de Dados I. Ementa. Para que serve a normalização? Posicionamento Roteiro Normalização Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução Dependências

Leia mais

Normalização. Prof. Rogério Gonçalves Bittencourt, M.Sc.

Normalização. Prof. Rogério Gonçalves Bittencourt, M.Sc. Normalização Prof. Rogério Gonçalves Bittencourt, M.Sc. Introdução Processo sistemático e matemático através do qual uma tabela relacional não normalizada é transformada em um conjunto de tabelas normalizadas

Leia mais

Normalização: Noções Básicas

Normalização: Noções Básicas Normalização: Noções Básicas Além de corresponder a uma representação relacional do diagrama ER discutido no livro-texto, o esquema relacional acima possui alguma propriedade específica que o qualifica

Leia mais

C : R I IN 0. tal que. C(α) = 0 sempre que α I {, ɛ} C(α + β) = C(α) + C(β) + 1. C(αβ) = C(α) + C(β) + 1. C(α ) = C(α) + 1.

C : R I IN 0. tal que. C(α) = 0 sempre que α I {, ɛ} C(α + β) = C(α) + C(β) + 1. C(αβ) = C(α) + C(β) + 1. C(α ) = C(α) + 1. PROPOSIÇÃO: Para cada expressão regular α R I existe um autómato finito determinista D tal que L(α) = L D. Prova (esboço): Prova-se, por indução na complexidade das expressões regulares α R I que, para

Leia mais

SISTEMAS DE INFORMAÇÃO

SISTEMAS DE INFORMAÇÃO ACH2025 Laboratório de Bases de Dados Aula 3 Revisão de Conceitos Professora: Fátima L. S. Nunes Codd 1972 verificação de um conjunto de regras pra certificar se o esquema de uma relação satisfaz a uma

Leia mais

26/03/2012. É uma restrição entre dois conjuntos de atributos do banco de dados. Definição formal: Significa que: Exemplos

26/03/2012. É uma restrição entre dois conjuntos de atributos do banco de dados. Definição formal: Significa que: Exemplos É uma restrição entre dois conjuntos de atributos do banco de dados. Normalização 2012.1 2 Definição formal: Uma dependência funcional é denotada por X Y entre dois conjuntos distintos de atributos X e

Leia mais

GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC)

GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC) GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC) Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Página:2 Projeto de BD Relacionais

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003 Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

Bases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação

Bases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação Bases de Dados Índices Discos transferência lenta e em blocos (512B ~ 4KB) transferência rápida e aos bytes memória disco BD / aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000

Leia mais

Este número é racional ou irracional. Se 2. é racional então basta tomar b = c = 2. Vem b c = 2. é irracional, então seja b = = 2, que é racional

Este número é racional ou irracional. Se 2. é racional então basta tomar b = c = 2. Vem b c = 2. é irracional, então seja b = = 2, que é racional Métodos de demonstração A semântica da lógica clássica é baseada na noção de verdade. E em particular cada proposição é absolutamente verdadeira ou falsa. Isso traduzse pelo princípio do terceiro excluído:

Leia mais

Bases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL

Bases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL Bases de Dados 2012/2013 Funções/procedimentos e triggers em PostgreSQL Helena Galhardas Bibliografia Manual referência PostgreSQL http://www.postgresql.org/docs/9.2/static/ plpgsql.html http://www.postgresql.org/docs/9.2/static/

Leia mais

LINGUAGENS FORMAIS E AUTÔMATOS

LINGUAGENS FORMAIS E AUTÔMATOS LINGUAGENS FORMAIS E AUTÔMATOS O objetivo deste curso é formalizar a idéia de linguagem e definir os tipos de sintaxe e semântica. Para cada sintaxe, analisamos autômatos, ue são abstrações de algoritmos.

Leia mais

Modelo Lógico de Dados (MLD) Origens do modelo relacional

Modelo Lógico de Dados (MLD) Origens do modelo relacional Modelo Lógico de Dados (MLD) O MLD é derivado a partir do MCD pela aplicação de um conjunto de regras bem definidas; A derivação do MLD depende fortemente dos conceitos e tecnologias subjacentes do MLD;

Leia mais

Normalização. Anomalias Dependência e determinantes Normalização

Normalização. Anomalias Dependência e determinantes Normalização FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 5º Periodo Disciplina: Banco de Dados I Prof. Erinaldo Sanches Nascimento Normalização Anomalias Dependência e determinantes Normalização

Leia mais

Gramáticas e Linguagens independentes de contexto

Gramáticas e Linguagens independentes de contexto Capítulo 6 Gramáticas e Linguagens independentes de contexto 6.1 Gramáticas Nesta secção vamos introduzir gramáticas formais para caracterização das linguagens, estudando fundamentalmente as gramáticas

Leia mais

Bases de Dados. Remoções em árvores B + Remoção em árvores B +

Bases de Dados. Remoções em árvores B + Remoção em árvores B + Bases de Dados Remoções em árvores B + Remoção em árvores B + Remoção procurar o registo e removê-lo do ficheiro se o apontador ou contentor ficar vazio, remover a entrada (valor, apontador) da folha se

Leia mais

Estrutura das Bases de Dados Relacionais Redução a tabelas de um Esquema ER Álgebra Relacional Operações Estendidas da Álgebra Relacional Modificação

Estrutura das Bases de Dados Relacionais Redução a tabelas de um Esquema ER Álgebra Relacional Operações Estendidas da Álgebra Relacional Modificação Capítulo 3: Modelo Relacional Estrutura das Bases de Dados Relacionais Redução a tabelas de um Esquema ER Álgebra Relacional Operações Estendidas da Álgebra Relacional Modificação da Base de Dados Vistas

Leia mais

Espaços Vectoriais. Espaços Vectoriais

Espaços Vectoriais. Espaços Vectoriais Espaços Vectoriais Espaço vectorial sobre um corpo V - conjunto não vazio de objectos, chamados vectores F - conjunto de escalares, com estrutura de corpo Em V definimos duas operações: - adição de elementos

Leia mais

Modelo Entidade-Relacionamento (E-R)

Modelo Entidade-Relacionamento (E-R) Modelo Entidade-Relacionamento (E-R) composto n lote n n n contrato_compra_venda n possui proprietário possui n associado cadastro n banco faz fronteira pertence n ruas n quadras n financiado empréstimo

Leia mais

Banco de Dados. Dependências Funcionais e Normalização de Bancos de Dados Relacionais. João Eduardo Ferreira Osvaldo Kotaro Takai

Banco de Dados. Dependências Funcionais e Normalização de Bancos de Dados Relacionais. João Eduardo Ferreira Osvaldo Kotaro Takai Banco de Dados Dependências Funcionais e Normalização de Bancos de Dados Relacionais João Eduardo Ferreira Osvaldo Kotaro Takai Abordagens de Projeto Top-down Iniciar com o agrupamento dos atributos obtidos

Leia mais

Fórmulas da lógica proposicional

Fórmulas da lógica proposicional Fórmulas da lógica proposicional As variáveis proposicionais p, q, são fórmulas (V P rop ) é fórmula (falso) α e β são fórmulas, então são fórmulas (α β), (α β), (α β) e ( α) DCC-FCUP -TAI -Sistemas Dedutivos

Leia mais

Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações

Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações Capítulo 5: Integridade e Segurança Restrições ao Domínio Integridade Referencial Asserções Triggers Segurança e Autorizações 1 Triggers Um trigger é um comando que é executado automaticamente pelo sistema,

Leia mais

Bases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória.

Bases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória. Bases de Dados Índices Discos transferência lenta transferência rápida e em blocos (512B ~ 4KB) e aos bytes memória disco aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000 tracks

Leia mais

Bases de Dados. Restrições de integridade. Restrições de integridade. As restrições de integridade garantem a consistência da BD exemplos

Bases de Dados. Restrições de integridade. Restrições de integridade. As restrições de integridade garantem a consistência da BD exemplos Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: o saldo de uma conta não pode ser null RI 2: nenhuma conta pode

Leia mais

Normalização. Banco de Dados. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Profa. Dra. Cristina Dutra de Aguiar Ciferri.

Normalização. Banco de Dados. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Dependência Funcional Um atributo B de um esquema de relação R é funcionalmente dependente de um outro atributo A de R se um valor para A determina um único valor para B em qualquer momento.

Leia mais

Dependência Funcional e Normalização)

Dependência Funcional e Normalização) Dependência Funcional e Normalização) Qualidade de Projeto O objetivo é evitar os problemas que podem provocar falhas no projeto do banco de dados, bem como eliminar a mistura de assuntos e as correspondentes

Leia mais

Programa Princípios Gerais Forças, vetores e operações vetoriais

Programa Princípios Gerais Forças, vetores e operações vetoriais Programa Princípios Gerais Forças, vetores e operações vetoriais Representação gráfica de vetores Graficamente, um vetor é representado por uma flecha: a intensidade é o comprimento da flecha; a direção

Leia mais

ESPAÇO VETORIAL REAL. b) Em relação à multiplicação: (ab) v = a(bv) (a + b) v = av + bv a (u + v ) = au + av 1u = u, para u, v V e a, b R

ESPAÇO VETORIAL REAL. b) Em relação à multiplicação: (ab) v = a(bv) (a + b) v = av + bv a (u + v ) = au + av 1u = u, para u, v V e a, b R ESPAÇO VETORIAL REAL Seja um conjunto V, não vazio, sobre o qual estão definidas as operações de adição e multiplicação por escalar, isto é: u, v V, u + v V a R, u V, au V O conjunto V com estas duas operações

Leia mais

ENFOQUE USANDO CORTES DE DEDEKIND

ENFOQUE USANDO CORTES DE DEDEKIND Universidade Estadual de Maringá - Departamento de Matemática Cálculo Diferencial e Integral: um KIT de Sobrevivência c Publicação eletrônica do KIT http://www.dma.uem.br/kit CONSTRUÇÃO DOS REAIS: UM ENFOQUE

Leia mais

Banco de Dados I. Aula 17 - Prof. Bruno Moreno 08/11/2011

Banco de Dados I. Aula 17 - Prof. Bruno Moreno 08/11/2011 Banco de Dados I Aula 17 - Prof. Bruno Moreno 08/11/2011 Plano de Aula Visões em SQL Normalização Motivação Definição Formas Normais Banco de Dados I VISÕES Visões É uma tabela única derivada de outra(s)

Leia mais

Lógica Computacional

Lógica Computacional Lógica Computacional Modus Ponens e Raciocínio Hipotético Introdução e eliminação da Implicação e da Equivalência Completude e Coerência do Sistema de Dedução Natural 24 Outubro 2016 Lógica Computacional

Leia mais