BDI - Capitulo 3 Revisão 9

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

Download "BDI - Capitulo 3 Revisão 9"

Transcrição

1 exatasfepi.com.br BDI - Capitulo 3 Revisão 9 André Luís Duarte Honra a teu pai e a tua mãe, para que se prolonguem os teus dias na terra que o Senhor teu Deus te dá. - Êxodo 20:12

2 Modelo Relacional Introdução Banco de Dados Relacionais Estrutura básica Esquema de Banco de Dados Linguagens de Consulta 08/08/2014 2

3 MR - Introdução Historicamente é um modelo novo Sistemas mais antigos eram hierárquicos ou em rede Modelo de dados principal para sistemas de processamento de dados comerciais Posteriormente foi utilizado como ferramenta CASE para projetos em diversos ambientes 08/08/2014 3

4 Estrutura de Banco de Dados Relacionais Um BDR consiste em uma coleção de tabelas Cada tabela deve ser designada por um nome único Uma linha numa tabela representa um relacionamento entre um conjunto de valores 08/08/2014 4

5 Estrutura básica do BDR Possui quatro atributos Cada atributo tem um conjunto de valores possíveis (domínio) Para o atributo nomeagência o domínio é o conjunto de todos os nomes de agências nome-agência número-conta nome-cliente saldo Centro 101 Lucas 500 Morro Chic 215 André 700 Boa Vista 102 Jussara 400 Varginha 305 Duarte 350 Boa Vista 201 Davi 900 BPS 222 Samuel 700 Avenida 217 Mateus 750 Centro 105 Mateus /08/2014

6 Definição formal D1 o conjunto dos nomes de agência, D2 o conjunto de números de contas, D3 o conjunto de nomes de clientes e D4 o conjunto de todos os saldos qualquer linha de depósito deverá conter (v1, v2, v3, v4) v1 está no domínio de D1, v2 está no domínio de D2, etc Geralmente uma tabela de n colunas precisa ser um subconjunto de D1 D2 D3 D4... Dn 1 Dn 08/08/2014 6

7 Nomenclatura Tabelas são essencialmente relações, encontraremos na literatura conceitual os termos matemáticos relação e tupla no lugar de tabela e linha nome-cliente nome-gerente nome-cliente nome-gerente RELAÇÃO André Jussara Lucas Antônio André Jussara Lucas Antônio TUPLA Lucas Lucas Lucas Lucas 08/08/2014 7

8 Relação depósito nome-agência número-conta nome-cliente saldo Centro 101 Lucas 500 Morro Chic 215 André 700 Boa Vista 102 Jussara 400 Varginha 305 Duarte 350 Boa Vista 201 Davi 900 BPS 222 Samuel 700 Avenida 217 Mateus 750 Centro 105 Mateus /08/2014 8

9 Notações 1 Na relação depósito existem oito tuplas Digamos que a variável tupla t refira-se à primeira tupla da relação. Usamos a notação t[nome-agência]=centro para representar o valor de t no atributo nome agência Assim: t[número-conta]=101 é o valor de t no atributo número da conta, nome do cliente e saldo seguem a mesma idéia 08/08/2014 9

10 Notações 2 Também podemos escrever t[1] representando o valor da tupla t no primeiro atributo, t[2] representando o número da conta, etc Uma vez que a relação é um conjunto de tuplas, usaremos a notação t r para representar que a tupla t está na relação r 08/08/

11 Exemplo Dada a relação depósito, apresente a 5ª tupla t[nome-agência] (t[1]) = Boa Vista t[número-conta] (t[2]) = 201 t[nome-cliente] (t[3]) = Davi t[saldo] (t[4]) = /08/

12 Esquema de Banco de Dados Esquema relacional (ER) é uma lista de atributos e seus respectivos domínios ER sempre tem um nome Nomes com letras maiúsculas => esquemas de relações Nomes com letras minúsculas => relações Depósito=(nome-agência, número-conta, nome-cliente, saldo) depósito(depósito) Esquema-cliente(nome-cliente, rua-cliente, cidade-cliente) 08/08/

13 Esquema de Banco de Dados Depósito=(nome-agência: nomes de agências, número-conta: inteiro positivo, nome-cliente: nomes de pessoas, saldo: real) Esquema-cliente(cpf: números de cpf, nome-cliente: nomes de pessoas, rua-cliente nomes de ruas, cidade-cliente: nomes de cidades) 08/08/

14 Estudo de Caso O uso de atributos comuns em esquemas relacionais é uma forma de relacionar tuplas de relações distintas Suponha que desejamos achar as cidades onde os clientes da agência Morro Chic moram 08/08/

15 Relações nome-agência Centro Morro Chic Boa Vista Varginha Boa Vista BPS Avenida nome-cliente Junior André Jussara Lislei Samuel Duarte Davi número-conta rua Rodrigues Seabra Rodrigues Seabra Cardoso Arlindo Zaroni nome-cliente Lucas André Jussara Duarte Davi Samuel Mateus cidade-cliente Itajubá Maria da Fé Itajubá Maria da Fé Pouso Alegre Brasópolis Paraisópolis saldo Relação cliente Relação depósito Centro 105 Mateus /08/

16 Redundâncias e valores nulos Um esquema relacional representando todas as informações seria melhor? Suponhamos o seguinte esquema relacional Esquema-conta-info=(nome-agência,númeroconta,nome-cliente,saldo,rua-cliente,cidadecliente) 08/08/

17 Problemas Se um cliente possui diversas contas, precisamos listar seu endereço uma vez para cada conta Se um cliente possui mais de uma conta, mas não forneceu seu endereço Não podemos construir uma tupla sobre Esquema-conta-info Para representar tuplas incompletas, precisamos utilizar valores nulos 08/08/

18 Problema com o esquema único númeroconta nomeagência nomecliente cidadecliente saldo rua-cliente Centro 101 Lucas 500 Verde Itajubá Morro Chic 215 André 700 NULO NULO Boa Vista 102 Jussara 400 NULO NULO Varginha 305 Lislei 350 Albino Maria da Fé Relação para Esquema-conta-info 08/08/

19 Esquema separado sem problema nome-agência Centro Morro Chic Boa Vista Varginha número-conta nome-cliente 101 Lucas 215 André 102 Jussara 305 Lislei Relação para Esquema-conta saldo nome-cliente Lucas Lislei rua-cliente Verde Albino Relação para Esquema-informação cidade-cliente Itajubá Maria da Fé 08/08/

20 Considerações sobre valores nulos Veremos que este tipo de informação (valores nulos) causam dificuldades no acesso e atualização do banco de dados Sempre que possível devem ser eliminados do banco Assumiremos que os esquemas de relação não possuem valores nulos Estudaremos critérios a fim de decidir quando um conjunto de esquema é melhor em termos de redundância e existência de valores nulos 08/08/

21 Linguagens de consulta É uma linguagem na qual o usuário requisita informações de um banco de dados Tipicamente são de mais alto nível em relação às linguagens de programação Podem ser classificadas em procedural e não procedural São parte de uma linguagem de manipulação Linguagem de definição de dados Linguagem de manipulação de dados 08/08/

22 Modelo Relacional Álgebra Relacional Operações fundamentais Operação selecionar Operação projetar Operação produto cartesiano Operação Renomear Operação União Operação Diferença Operações adicionais Operação Intersecção de Conjuntos Operação Junção Natural Operação Divisão Operação Atribuição 08/08/

23 Álgebra Relacional É uma linguagem de consulta procedural devemos informar como os dados devem ser obtidos => ordem das operações é importante As operações manipulam uma ou mais relações de entrada e geram uma relação de saída 08/08/

24 Álgebra relacional intuitiva SELECIONAR PROJETAR A B C X Y AX AY BX BY CX CY PRODUTOCARTESIANO DIFERENÇA INTERSEÇÃO UNIÃO a1 a2 a3 b1 b2 b3 b1 b2 b3 c1 c2 c3 b1 b2 b3 c1 c2 c3 a1 a2 a3 JUNÇÃONATURAL ax ay az bx cy x y a DIVISÃO 08/08/

25 Esquemas propostos Agência=(nomeagência, ativos, cidadeagência) Cliente=(nomecliete, ruacliente, cidadecliente) Depósito=(nomeagência, númeroconta, nomecliente, saldo) Empréstimo=(nomeagência, numeroempréstimo, nomecliente, quantia) 08/08/

26 Diagrama proposto Conta n Saldo Depósito Cidade Rua Nome Cliente Agência Cidade Ativos Nome Empréstimo Empréstimo n Quantia 08/08/

27 Relações empréstimo nome-agência número-empréstimo nome-cliente quantia Centro 17 Junior 1000 BPS 23 André 2000 Boa Vista 15 Jussara 1500 Centro 14 Ana 1500 Morro Chic 93 Lislei 500 Varginha 11 Duarte 900 Canudos 29 Davi 1200 Sul 16 Talita 1300 Centro 18 Lucas 2000 Boa Vista 25 Mariana 2500 Avenida 10 Tiago /08/

28 Relação agência nome-agência ativos cidade-agência Centro Cristina BPS Piranguinho Boa Vista São José Morro Chic São José Varginha São José Canudos Jacareí Sul Maria da Fé Avenida Cristina 08/08/

29 Operações Fundamentais Selecionar Projetar Produto cartesiano Renomear União Diferença de conjuntos 08/08/

30 Operação Selecionar Seleciona tuplas que satisfazem um dado predicado Utiliza-se a letra grega representar seleção (sigma) para O predicado aparece como subscrito de A relação argumento é dada entre parênteses 08/08/

31 Exemplo 1 Seleção Selecionar as tuplas da relação empréstimo onde agência é Centro nome agência" Centro" empréstimo nome-agência número-empréstimo nome-cliente quantia Centro 17 Junior 1000 Centro 14 Mateus 1500 Centro 18 Lucas /08/2014

32 Exemplo 2 Seleção Encontrar todas as tuplas nas quais a quantia emprestada é maior do que R$1200,00 quantia1200 empréstimo nome-agência número-empréstimo nome-cliente quantia BPS 23 André 2000 Boa Vista 15 Jussara 1500 Centro 14 Mateus 1500 Sul 16 Talita 1300 Centro 18 Lucas 2000 Boa Vista 25 Mariana 2500 Avenida 10 Tiago /08/2014

33 Utilização de operadores Podemos utilizar os operadores além de combinar predicados com os conectivos (e) e,,,,, (ou) 08/08/

34 Exemplo 3 Seleção Encontrar as tuplas pertencentes a empréstimos maiores que $1200,00 feitos pela agência do centro nomeagência" Centro" quantia1200 empréstimo nome-agência númeroempréstimo nome-cliente quantia Centro 14 Mateus 1500 Centro 18 Lucas /08/2014

35 Comparação entre atributos O predicado de seleção pode ser usado para comparar dois atributos Considere o esquema relacional Esquema-usuário=(nome-cliente,nome-gerente) indicando que um cliente possui um gerente pessoal 08/08/

36 Relação usuário nome-cliente André Jussara Lucas nome-gerente Lucas Antônio Lucas Encontrar todos os clientes que têm o mesmo nome do seu gerente pessoal nomeclientenome gerente(usuário) nome-cliente Lucas nome-gerente Lucas 08/08/2014

37 Exercício de Fixação Encontrar as tuplas na relação empréstimo com movimentações de André, Jussara ou Davi Encontre as tuplas na relação agência que possuem ativos menores do que ou o nome seja São José Encontre as tuplas na relação usuário onde o gerente não tenha o mesmo nome do seu cliente 08/08/2014

38 Operação Projetar Permite a geração de uma listagem com certas colunas deixadas de fora Como uma relação é um conjunto, quaisquer linhas duplicadas são deixadas de fora É representada pela letra grega (pi maiúscula) Listamos os atributos que queremos que apareçam nos resultados como subscrito de O argumento de relação segue a letra entre parênteses 08/08/

39 Exemplo 1 Projeção Deseja-se uma relação mostrando os clientes e as agências das quais tomaram empréstimo independente da quantia ou do número do empréstimo. nomeagência ( empréstimo), nomeusuário 08/08/

40 Exemplo 2 Projeção Dê o nome dos clientes que possuem o mesmo nome dos seus gerentes pessoais nome usuário nome usuário nome gerente usuário 08/08/

41 Exercício de Fixação Mostre o valor número do empréstimo e a quantia na relação empréstimo com movimentações de André, Jussara ou Davi Mostre o nome da agência na relação agência que possuem ativos menores do que ou o nome seja São José Mostre o nome de todos os gerentes 08/08/2014

42 Operação Produto Cartesiano Permite combinar informações a partir de diversas relações É representada pela (cruz) Usaremos a notação r1 r2 para representar o produto cartesiano entre as relações r1 e r2 08/08/

43 Operação Produto Cartesiano Uma relação é definida como sendo um subconjunto de um produto cartesiano de um conjunto de domínios O produto cartesiano por si só, em geral, não possui uso prático A operação será realmente útil quando for seguida de algumas seleções 08/08/

44 Exemplo 1 Produto Cartesiano Dê todos os usuários do gerente Lucas e a cidade em que eles vivem nome gerente "( usuário cliente) " Lucas 08/08/2014

45 nome-gerente usuário.nomecliente cliente.nomecliente rua-cliente cidade-cliente André Lucas Lucas Coronel Piranguinho André Lucas André Seabra Maria da Fé André Lucas Jussara Rodrigues Itajubá André Lucas Lislei Seabra Maria da Fé André Lucas Samuel Cardoso Pouso Alegre André Lucas Duarte Arlindo Brasópolis André Lucas Davi Zaroni Paraisópolis Lucas Lucas Lucas Coronel Piranguinho Lucas Lucas André Seabra Maria da Fé Lucas Lucas Jussara Rodrigues Itajubá Lucas Lucas Lislei Seabra Maria da Fé Lucas Lucas Samuel Cardoso São José Lucas Lucas Duarte Arlindo Brasópolis Lucas Lucas Davi Zaroni Paraisópolis 08/08/

46 Nomes de atributos Problema como ficam os nomes dos atributos da relação r1 x r2? Suponha que desejamos os usuários atendidos pelo gerente Lucas e as cidades em que estes usuários vivem A informação estará na relação usuário e na relação cliente 08/08/

47 Desenvolvendo Esquema-cliente=(nomecliente,ruacliente,cidadecliente) Esquema-usuário=(nomecliente,nomegerente) r usuário cliente Simplesmente ligamos todos os atributos de ambas as relações e ligamos o nome da relação da qual veio o atributo original Esquema-r=(usuário.nomecliente,usuário.nomegerente, cliente.nomecliente,cliente.ruacliente,cliente.cidadecliente) 08/08/

48 Solução Esquema-r=(usuário.nomecliente,nomegerente, cliente.nomecliente,ruacliente,cidadecliente) nome-gerente Os atributos que só aparecem em um dos dois esquemas, utilizamos o nome do atributo e os que se repetem usamos a dupla nomerelação.nome-atributo usuário.nomecliente cliente.nomecliente rua-cliente cidade-cliente André Lucas Lucas Coronel Piranguinho André Lucas André Seabra Maria da Fé /08/2014

49 Combinação das tuplas Se temos n1 tuplas em usuário e n2 tuplas em cliente então é possíveis combinar as tuplas de n1 x n2 maneiras Pode ocorrer na combinação t usuário. nome cliente tcliente. nome cliente Isto se deve ao fato de o esquema resultante ser a concatenação de dois outros 08/08/

50 Retornando a consulta Dê todos os usuários do gerente Lucas e a cidade em que eles vivem nome gerente" Lucas"( usuário cliente) Temos uma relação pertencente à Lucas A coluna usuário.nome-cliente contém apenas clientes de Lucas 08/08/

51 nome-gerente usuário.nomecliente cliente.nomecliente rua-cliente cidade-cliente André Lucas Lucas Coronel Piranguinho André Lucas André Seabra Maria da Fé André Lucas Jussara Rodrigues Itajubá André Lucas Lislei Seabra Maria da Fé André Lucas Samuel Cardoso São José André Lucas Duarte Arlindo Brasópolis André Lucas Davi Zaroni Paraisópolis Lucas Lucas Lucas Coronel Piranguinho Lucas Lucas André Seabra Maria da Fé Lucas Lucas Jussara Rodrigues Itajubá Lucas Lucas Lislei Seabra Maria da Fé Lucas Lucas Samuel Cardoso São José Lucas Lucas Duarte Arlindo Brasópolis Lucas Lucas Davi Zaroni Paraisópolis 08/08/

52 Localizando a informação A operação produto cartesiano associa qualquer tupla de cliente a qualquer tupla de usuário Sabemos que algumas tuplas na relação resultante possuem a informação desejada usuário. nomeclient e cliente. nomeclient e 08/08/2014

53 nome-gerente usuário.nomecliente cliente.nomecliente rua-cliente cidade-cliente André Lucas Lucas Coronel Piranguinho André Lucas André Seabra Maria da Fé André Lucas Jussara Rodrigues Itajubá André Lucas Lislei Seabra Maria da Fé André Lucas Samuel Cardoso São José André Lucas Duarte Arlindo Brasópolis André Lucas Davi Zaroni Paraisópolis Lucas Lucas Lucas Coronel Piranguinho Lucas Lucas André Seabra Maria da Fé Lucas Lucas Jussara Rodrigues Itajubá Lucas Lucas Lislei Seabra Maria da Fé Lucas Lucas Samuel Cardoso São José Lucas Lucas Duarte Arlindo Brasópolis Lucas Lucas Davi Zaroni Paraisópolis 08/08/

54 Obtendo a seleção desejada usuário. nomeclientecliente. nomecliente nomegerente" Lucas" Com esta expressão teremos as tuplas da relação que: Pertencem a Lucas usuáriocliente Têm a rua e cidade do cliente de Lucas 08/08/

55 Finalizando Como queremos o nome dos clientes e a cidade em que eles vivem, fazemos uma projeção usuário. nomecliente, cidadecliente usuário. nomeclientecliente. nomecliente nomegerente" Lucas" usuário cliente 08/08/

56 Exercício de fixação Mostre o nome e a rua dos clientes que possuem um depósito na agência Centro da cidade de São José Mostre o nome e a cidade dos clientes que possuem depósito acima de 2000 em qualquer agência Mostre o nome e a cidade dos clientes que possuem ou empréstimo acima de 2000 em qualquer agência Mostre as agências que possuem clientes que moram na mesma cidade onde possuem conta Mostre o nome do cliente, os depósitos e empréstimo das agências que possuem ativos maiores do que /08/

57 Exercícios Crie a consulta e exiba a relação resultante Exiba todos os clientes de agências localizadas em São José Exiba uma lista com as agências que possuem ativos maiores do que e os gerentes vinculados à estas agências Exiba os clientes que moram na mesma cidade de sua agencia Exiba o nome da agencia e o numero do empréstimo dos empréstimos maiores do que 1000 das agências que possuem ativos menores do que Exiba os empréstimos e depósitos vinculados ao gerente Antônio Exiba uma lista com os clientes e seus gerentes que possuem relação coma agência Centro 08/08/

58 Operação Renomear No exemplo anterior, convencionamos nomear atributo por nome-relação.nome-atributo a fim de eliminarmos possíveis ambigüidades ao acessar as tuplas Outra forma de ambigüidade é quando a mesma relação aparece mais de uma vez na consulta 08/08/

59 Exemplo 1 - Renomear Suponha que desejamos os nomes de todos os clientes que moram na mesma rua e cidade de André Podemos obter rua e cidade de André através da consulta rua, cidadecliente nomecliente" André" cliente 08/08/

60 Achando outros clientes p Para encontrarmos outros clientes com esta rua e cidade, devemos nos referir à relação cliente uma segunda vez cliente cliente rua, cidadecliente nomecliente" André" Onde p => predicado de seleção onde valores de cidade-cliente e rua sejam iguais 08/08/

61 Representação Para resolver, utilizamos a operação Renomear, representada pela letra minúscula) x r (Rô Esta expressão retornará a relação r com o nome x 08/08/

62 Solução 1 cliente. nomecliente cliente rua, cidadecliente cliente 2. ruacliente. ruacliente 2. cidadecliente cliente. cidadecliente nomecliente " André" cliente 2 cliente 08/08/

63 Solução 2 cliente. nomecliente cliente2 cliente2. ruacliente. ruacliente2. cidadecliente cliente. cidadecliente ( cliente) rua, cidadecliente nomecliente" André" cliente 08/08/

64 Exercícios de fixação Mostre todas as informações das agências localizadas a mesma cidade da agência centro Mostre os saldos dos clientes que moram na mesma rua que a cliente Maria Mostre os empréstimos dos clientes que estão na mesma cidade 08/08/

65 Operação União A operação união é representada pelo símbolo U Como as relações são conjuntos, matematicamente, os valores duplicados são eliminados Para que uma operação união seja válida As relações envolvidas devem ter o mesmo grau Os domínios do i-ésimo atributo de r e de s devem ser os mesmos 08/08/

66 Exemplo 1 União Vamos supor que o banco deseja saber o nome de todos os clientes que possuem uma relação (conta, empréstimo ou ambos) com a agência Boa Vista Esquema depósito (nome-agência, número-conta, nome-cliente, saldo) Esquema empréstimo (nome-agência, númeroempréstimo, nome-cliente, quantia) 08/08/

67 Solução 1 Podemos encontrar todos os clientes com um empréstimo na agência Boa Vista nome cliente nomeagência" BoaVista" Podemos encontrar todos os clientes que possuem uma conta na agência Boa Vista nome cliente nomeagência" BoaVista" empréstimo depósito 08/08/

68 Solução 2 nomecliente nomecliente nomeagência" BoaVista " nomeagência" BoaVista " empréstimo depósito nome-cliente Jussara Mariana Davi 08/08/

69 Exercícios de fixação Exibir uma lista das cidades existentes no banco de dados Exibir os nomes de todas as pessoas no banco Mostrar uma lista com todas as quantias depositadas e emprestadas no banco Mostrar o endereço dos clientes que possuem uma relação (conta, empréstimo ou ambos) com a agência Centro 08/08/

70 Operação Diferença de Conjuntos Permite encontrar tuplas que estejam em uma relação e não estejam em outra relação É representada pelo símbolo ( ) A expressão r-s resulta em uma relação contendo as tuplas que estão em r mas não estão em s 08/08/

71 Exemplo 1 Diferença Encontrar todos os clientes da agência Boa Vista que tenham uma conta, mas não um empréstimo nomecliente nomecliente nomeagência" BoaVista" nomeagência" BoaVista" nome-cliente Davi depósito empréstimo 08/08/2014

72 Exemplo 2 Diferença Dê o maior saldo em depósito Intuitivamente poderíamos pensar em escrever uma consulta do tipo depósito depósito. saldo d. saldo d depósito E se fizermos a comparação inversa depósito. saldo d. saldo depósito d depósito 08/08/

73 Solução saldo depósito depósito. saldo depósito depósito. saldo d. saldo d depósito 08/08/

74 Exercício de fixação Exiba a conta e o cliente com o maior saldo Exiba o empréstimo e o cliente com o menor valor Exiba a agencia com o maior e menor ativos Exiba os cliente que possuem empréstimo e não possuem depósito 08/08/

75 Definição Formal da Álgebra Relacional Sejam E1e E2 expressões da álgebra relacional, as seguintes são expressões da álgebra relacional E1 E2 E1 E2 E1 E2 σ p E1, onde p é um predicado sobre atributos que ocorrem em E1 Π s E1, onde s é uma lista de atributos que ocorre em E1 ρ x E1, onde x é o novo nome para a relação E1 08/08/

76 08/08/

77 Exercício de fixação Selecione todos os filmes da locadora É possível saber quais os operadores que compraram os filmes de ação e quem são os fornecedores? Selecione todos os fornecedores de filmes de aventura Selecione todos os operadores que alugaram filmes que possuem o mesmo diretor de O Senhor do Anéis Selecione os associados que moram na mesma cidade que o associado André Selecione o filme de maior duração Selecione o filme de menor duração Selecione os clientes mais velhos Selecione os associados que são cônjuge de algum cliente Exiba uma lista com nome de todas as pessoas no banco 08/08/

78 Operações Adicionais Operação Intersecção de Conjuntos Operação Junção Natural Operação Divisão Operação Atribuição 08/08/

79 Operação Intersecção A intersecção na álgebra relacional pode ser reescrita utilizando um par de diferenças entre conjuntos r s r r s A operação intersecção, não é uma operação fundamental nem acrescenta desempenho à consulta 08/08/

80 Exemplo 1 - Intersecção Suponha que desejamos encontrar todos os clientes com um empréstimo e uma conta na agência Boa Vista nomecliente nomecliente nomeagência " BoaVista " nomeagência " BoaVista " depósito empréstimo 08/08/

81 Exercício de fixação Encontre as agências que possuem depósitos e empréstimos maiores do que 800. Quais são as agências que deveriam aparecer na sua resposta? Encontre as cidades que possuem uma agência e que tenham clientes que possuem conta residentes nela. Encontre todos os clientes que possuem um saldo menor ou igual a 500 e empréstimo maior ou igual a Quais clientes devem aparecer na resposta? 08/08/

82 Operação Junção Natural Uma consulta que envolve um produto cartesiano inclui, normalmente, uma operação de seleção no resultado desse produto A operação junção natural é uma operação binária que permite combinar certas seleções e um produto cartesiano em uma operação, é representada pelo símbolo 08/08/

83 Operação Junção Natural Forma geral da operação de junção: r(r) <predicado de junção> s(s) Onde: R = A 1, A 2,, A n S = B 1, B 2,, B m 08/08/

84 Operação Junção Natural Para a nossa disciplina: r(r) s(s) Onde: R = A 1, A 2,, A n S = B 1, B 2,, B m 08/08/

85 Exemplo 1 Junção Natural Dê os clientes que têm um empréstimo no banco e as cidades em que vivem empréstimo. nome client, cidade cliente empréstimo. nome cliente cliente. nome cliente empréstimo cliente Utilizando operações fundamentais: Ou seja, tomamos o produto cartesiano entre as relações empréstimos e cliente, depois selecionamos aquelas tuplas que pertencem a um único nome-cliente 08/08/

86 Solução A operação junção natural forma um produto cartesiano dos seus dois argumentos, faz uma seleção forçando uma igualdade sobre os atributos comuns em ambos os esquemas relacionais e remove as tuplas duplicadas nome cliente,cidade cliente (empréstimo empréstimo.nome cliente=cliente.nome cliente cliente) 08/08/

87 Solução na disciplina A operação junção natural forma um produto cartesiano dos seus dois argumentos, faz uma seleção forçando uma igualdade sobre os atributos comuns em ambos os esquemas relacionais e remove as tuplas duplicadas nome cliente,cidade cliente ( empréstimo cliente) 08/08/

88 Definição Formal de Junção Natural Vamos considerar os esquemas relacionais R e S Se considerarmos os esquemas como conjuntos ao invés de listas, poderemos escrever as expressões R S R S Considere agora duas relações r(r) e s(s) 08/08/

89 Definição Formal de Junção Natural A ligação natural de r e s, representada por r <predicado> s, é uma relação sobre o esquema R S E uma projeção em R U S de uma seleção sobre r x s, onde o predicado requer que r.a1 = s.a1. Para cada atributo A em R S 08/08/

90 Definição Formal de Junção Natural 08/08/

91 Exercícios de fixação Exiba número da conta e os saldos das agências que possuem ativo maior do que Exiba os números e valores dos empréstimos das agências que estão em São José Exiba os nomes e o endereço dos clientes que possuem uma conta com saldo superior a 1000 nas agências com ativo menor do que /08/

92 Operação Divisão É representada pelo símbolo matemático de divisão( ) Serve para consultas onde pode-se incluir a frase para todos 08/08/

93 Exemplo 1 Divisão Desejamos os clientes que têm uma conta em todas as agências em Cristina Todos os clientes que possuem alguma conta numa agência obtenho com r2 depósito nomecliente, nomeagência Podemos localizar todas as agências em Cristina utilizando a expressão r agência 1 nome agência cidade" Cristina" 08/08/

94 Solução Precisamos encontrar clientes que aparecem em r2 com cada nome de agência em r1, ou seja, para toda tupla existente em r1 achar uma tupla correspondente a cada valor em r2 depósito nomecliente, nomeagência nomeagência cidade" Cristina" agência 08/08/

95 Definição Formal da Divisão Sejam r(r) e s(s) relações e seja S R A relação r s é uma relação no esquema R-S r s Uma tupla t está em se, para cada tupla ts em s existe uma tupla tr em r satisfazendo as regras t t r r S t s S R S tr S 08/08/

96 Esquematicamente REsquema depósito (nome-agência, númeroconta, nome-cliente, saldo) nome-agência Centro Morro Chic Boa Vista Varginha Boa Vista BPS Avenida Centro nome-cliente Lucas André Jussara Lislei Samuel Duarte Davi Davi S Esquema agência (nome-agência, ativos, cidade-agência) nome-agência Centro Avenida nome-cliente Davi 08/08/2014

97 Exercício de fixação r = todas as consultas s = todos os cardiologistas Qual seria a questão que essa consulta resolveria? nomemédico Maria Jussara Maria Maria Virginia Raimundo Benedito Pedro nomepaciente Lucas André Jussara André Lislei Samuel Davi Ana nomemédico Maria Pedro nomepaciente? Maria Ana Pedro Lucas Pedro André 08/08/2014

98 Exercício de fixação Dado os exemplos de relacionamentos, responda as questões: Vendedor <atende> Cliente De os clientes que foram atendidos por todos os vendedores Médico <consulta> Paciente De os paciente que já foram atendidos por todos os médicos 08/08/2014

99 Operação Atribuição Seria interessante se pudéssemos escrever uma expressão da álgebra relacional em partes Para isto utilizamos a operação atribuição, que é representada pela (seta à esquerda), para uma variável temporária do tipo relação 08/08/

100 Operação Atribuição O resultado da expressão à direita da seta é atribuído para a variável de tipo relação à esquerda Este resultado não é exibido para o usuário mas pode ser utilizado em expressões subseqüentes temp RS r temp RS temp s r 08/08/

101 Operação Atribuição As expressões da álgebra relacional podem ser escritas como um programa seqüencial A atribuição deve sempre, no caso de consultas, ser feita para uma variável temporária As atribuições para relações permanentes consistem em uma modificação no banco de dados 08/08/

102 Modificação no Banco de Dados com álgebra Relacional As modificações no banco de dados na álgebra relacional são expressões usando o operador de atribuição As atribuições são feitas para relações presentes no banco de dados atual 08/08/

103 Remoção A remoção é expressa da mesma forma que uma consulta, contudo, em vez de exibir o resultado, removem-se as tuplas da seleção Podemos remover apenas tuplas inteiras A remoção é expressa da álgebra relacional como r r E onde r é uma relação e E é uma expressão (consulta) da álgebra relacional 08/08/

104 Exemplo 1 - Remoção Remova todas as contas de André depósito depósito nome cliente" André" depósito 08/08/

105 Exemplo 2 - Remoção Remova todas as contas da agência localizada em Itajubá r 1 σ cidade agência="itajubá" (depósito depósito.nome agência=agência.nome agência agência) r 2 Π nome agência,número conta,nome cliente,saldo (r 1 ) depósito depósito r 2 08/08/2014

106 Inserção Podemos inserir dados em uma relação especificando os valores Escrever uma consulta cujo resultado é o conjunto de tuplas a serem inseridas Os valores dos atributos para tuplas inseridas precisam ser elementos do domínio do atributo 08/08/

107 Inserção Na álgebra relacional expressamos uma inserção por r r E, onde r é uma relação e E é uma expressão da álgebra relacional A expressão de uma tupla simples é expressa fazendo com que a expressão E seja uma relação constante contendo uma única tupla 08/08/

108 Exemplo 1 - Inserção Desejamos inserir a informação de que André tem $1200 na conta 9732 na agência Boa Vista depósito depósito " BoaVista",9732," André", /08/

109 Exemplo 2 Inserção Desejamos abrir uma poupança de $200 para todos os clientes com empréstimo na agência Boa Vista e o número do empréstimo será o número da conta para novas poupanças r1 " BoaVista" empréstimo r2 nome agência depósito nomeagência, númeroempréstimo, nomecliente depósito r2 200 r1 08/08/

110 Atualização Desejamos alterar um dos valores de uma tupla sem mudar todos os seus valores Se usarmos remoção e inserção, podemos não ser capaz de reter os valores que não queremos alterar 08/08/

111 Atualização É representada pela letra grega (delta minúsculo) Possui a forma A E r, onde r é o nome de uma relação com atributo A que recebe o valor da expressão E A expressão E é qualquer expressão aritmética, ou não, envolvendo constantes e atributos no esquema da relação r 08/08/

112 Exemplo 1 Atualização Suponha que o pagamento de juros esteja sendo feito e o saldo de todas as contas seja acrescido em 5% saldo saldo1, 05 depósito 08/08/

113 Exemplo 2 - Atualização Suponha que contas com saldos superiores a $ recebam 6% enquanto todas as outras recebam 5% saldo saldo saldo saldo 1,06 1,05 saldo saldo depósito depósito 08/08/

114 Visões de Usuário Até agora operamos no nível do modelo conceitual As coleções de relações que estamos manipulando são as relações armazenadas no banco de dados Não é de interesse da empresa que seus usuários vejam todo o modelo conceitual do banco de dados 08/08/

115 Exemplos Considere um caixa que precisa saber o número de empréstimo de um cliente, mas não a quantia do empréstimo empréstimo nomeagência, empréstimo, nomecliente Suponha que tenha que gerar uma relação com os clientes de cada agência nomeagência, nomecliente nomeagência, nomecliente depósito empréstimo 08/08/

116 Observações Qualquer relação que não faça parte do modelo conceitual, mas que é visível ao usuário como uma relação virtual é chamada de visão do usuário Não é possível (nem recomendável) armazenar uma relação correspondente a uma visão Uma visão deve ser recomposta para cada vez que uma expressão se refira a ela 08/08/

117 Definindo uma Visão Precisamos dar a ela um nome Estabelecer a consulta que computa a visão A forma da instrução é: create view u as <expressão de consulta> <expressão de consulta> é qualquer expressão de consulta válida da álgebra relacional u é o nome dado à visão 08/08/

118 Exemplo 1 Visão Considere a visão consistindo em agências e seus clientes. Assuma que desejamos que esta visão se chame todos-clientes create view todos-clientes as nomeagência, nomecliente nomeagência, nomecliente depósito empréstimo 08/08/

119 Utilizando a visão Podemos achar todos os clientes da agência Boa Vista escrevendo nome cliente nome agência " BoaVista" todos clientes 08/08/

120 Atualização com Visões e Valores Vazios As visões são muito úteis para auxiliar nas consultas no banco de dados Para efetuar inserções, atualizações e remoções no banco de dados, a estrutura da visão deve ser traduzida para a estrutura das relações presentes no modelo conceitual do banco de dados 08/08/

121 Exemplo 2 Visão Considere o caixa que precisa ver todos os dados de empréstimo na relação empréstimo, exceto quantia-empréstimo create view info-empréstimo as nome agência, númeroempréstimo, nome cliente empréstimo 08/08/

122 Problema Uma vez que definimos que um nome de visão pode aparecer em qualquer lugar onde é permitido o nome de uma relação, o caixa poderá escrever info empréstimo info " BoaVista",3," João" empréstimo 08/08/

123 Solução Esta inserção precisa ser representada por uma inserção na relação empréstimo Para inserir uma tupla em empréstimo, precisamos ter algum valor para quantia Rejeitar a inserção e dar uma mensagem de erro ao usuário; Inserir uma tupla {( BoaVista,3, João,vazio)} na relação empréstimo 08/08/

124 Consideração O símbolo vazio significa que este é desconhecido ou que ele não existe Todas as comparações envolvendo vazio são falsas por definição 08/08/

125 Exemplo 3 Visão A seguinte visão lista as cidades nas quais vivem clientes com um empréstimo create view cidade-agência as Π cliente.nome cliente,cidade agência (empréstimo empréstimo,nome cliente=cliente.nome cliente cliente) 08/08/2014

126 Problema Considere a seguinte inserção por meio da visão anterior cidade agência cidade " Avenida"," StaRita" agência 08/08/

127 Representação nas Relações O único método possível para inserirmos tuplas na relação empréstimo e cliente é: Na relação empréstimo inserimos {( Avenida, vazio, vazio, vazio)} Na relação cliente inserirmos {(vazio, vazio, StaRita )} 08/08/

128 Relação Empréstimo nome-agência númeroempréstimo nome-cliente quantia Centro 17 Junior 1000 BPS 23 André 2000 Boa Vista 15 Jussara 1500 Centro 14 Ana 1500 Morro Chic 93 Lislei 500 Varginha 11 Duarte 900 Canudos 29 Davi 1200 Sul 16 Talita 1300 Centro 18 Lucas 2000 Boa Vista 25 Mariana 2500 Avenida 10 Tiago 2200 Avenida nulo nulo nulo 08/08/

129 Relação Cliente nome-cliente rua cidade-cliente Junior Rodrigues Itajubá André Seabra Maria da Fé Jussara Rodrigues Itajubá Lislei Seabra Maria da Fé Samuel Cardoso Pouso Alegre Duarte Arlindo Brasópolis Davi Zaroni Paraisópolis nulo nulo Sta Rita 08/08/

130 Resultado Incoerente Se fizermos uma consulta com a expressão cidade agência nome agência, cidadecliente o resultado não incluirá a tupla inserida {( Avenida, StaRita )}, pois todas as comparações envolvendo vazio são definidas como falsas 08/08/

131 Conclusão Devemos evitar efetuar alterações nas relações do modelo conceitual usando visões a partir de diversas relações Podemos executar uma atualização em uma visão de uma única relação, desde que a visão contenha a chave primária e todos os atributos que tenham cardinalidade mínima igual a um 08/08/

132 Conclusão Por questões de desempenho, uma visão muito complexa pode ser materializada para que eventuais consultas sucessivas não tenham que criar a visão várias vezes Consultas podem ser usadas para popular relações auxiliares 08/08/

Exercícios. Aula 03 Banco de Dados. Capítulo 3 Modelo Relacional. Estrutura / Esquemas de banco de dados. Álgebra Relacional

Exercícios. Aula 03 Banco de Dados. Capítulo 3 Modelo Relacional. Estrutura / Esquemas de banco de dados. Álgebra Relacional Exercícios Aula 03 Banco de Dados Capítulo 3 Modelo Relacional Estrutura / Esquemas de banco de dados 01) Defina banco de dados relacional. 02) O que é relação e tupla. Cite três exemplos. 03) O que significa

Leia mais

Laboratóriode Bases de Dados Aula12. ÁlgebraRelacional-Revisão. Professora: Fátima L. S. Nunes

Laboratóriode Bases de Dados Aula12. ÁlgebraRelacional-Revisão. Professora: Fátima L. S. Nunes ACH2025 Laboratóriode Bases de Dados Aula12 ÁlgebraRelacional-Revisão Professora: Fátima L. S. Nunes Álgebra Relacional operações fundamentais: selecionar projetar renomear unárias produto cartesiano união

Leia mais

Modelo Relacional: Banco de Dados: coleção de relações cada relação tem um nome único.

Modelo Relacional: Banco de Dados: coleção de relações cada relação tem um nome único. Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 13 Álgebra Relacional Introdução Banco de Dados / 2 Recordando... Modelo Relacional: Banco de Dados: coleção de relações cada

Leia mais

Banco de Dados I Módulo III: Linguagens de Consulta. (Aula 1) Clodis Boscarioli

Banco de Dados I Módulo III: Linguagens de Consulta. (Aula 1) Clodis Boscarioli Banco de Dados I 2007 Módulo III: Linguagens de Consulta (Aula 1) Clodis Boscarioli Conteúdo do Módulo: Linguagens de Consulta Formais Álgebra Relacional; Cálculo Relacional de Tupla; Cálculo Relacional

Leia mais

Bancos (Bases) de Dados Aula #7 Álgebra Relacional

Bancos (Bases) de Dados Aula #7 Álgebra Relacional Bancos (Bases) de Dados Aula #7 Álgebra Relacional Cálculo Relacional Prof. Eduardo R. Hruschka * Slides baseados no material elaborado pelas professoras: Cristina D. A. Ciferri Elaine P. M. de Souza Álgebra

Leia mais

Banco de Dados. André Luís Duarte Capítulo 2. exatasfepi.com.br

Banco de Dados. André Luís Duarte Capítulo 2. exatasfepi.com.br exatasfepi.com.br Banco de Dados André Luís Duarte Capítulo 2 Eu é que sei os pensamentos que tenho a vosso respeito... pensamentos de bem e não de mal... (Jr 29:11) Modelo Conceitual (MER) Abstração e

Leia mais

INTRODUÇÃO AO MODELO RELACIONAL

INTRODUÇÃO AO MODELO RELACIONAL INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO AO MODELO RELACIONAL Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com 26/06/2013 SUMÁRIO Instalação do

Leia mais

Notas de Aula Banco de Dados

Notas de Aula Banco de Dados Notas de Aula Banco de Dados Sistema de Informação FEPI 2014 Banco de Dados Sumário Capítulo 1 Projeto Lógico de Banco de Dados... 5 1.1 Introdução Sistema: Uma Visão Geral... 5 1.2 Modelagem Lógica de

Leia mais

Operações fundamentais são suficientes para expressar qualquer consulta. Problema: consultas muito longas. Solução: definição de operações adicionais

Operações fundamentais são suficientes para expressar qualquer consulta. Problema: consultas muito longas. Solução: definição de operações adicionais Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 15 Álgebra Relacional Operações Adicionais Banco de Dados / 2 Operações Adicionais Operações fundamentais são suficientes para

Leia mais

Introdução ao Modelo Relacional

Introdução ao Modelo Relacional INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Introdução ao Modelo Relacional Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com 19/05/2016 Sumário Instalação do

Leia mais

Álgebra Relacional. Linguagem de consultas procedural Conjunto de operações que usam uma ou duas relações como entrada e geram uma relação de saída

Álgebra Relacional. Linguagem de consultas procedural Conjunto de operações que usam uma ou duas relações como entrada e geram uma relação de saída Algebra Relacional Adaptado de Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto Ribeiro de Queiroz gribeiro@dpi.inpe.br Álgebra Relacional Linguagem de consultas procedural

Leia mais

Linguagem de Consulta/Interrogação

Linguagem de Consulta/Interrogação Linguagem de Consulta/Interrogação Álgebra Relacional Linguagem a que o utilizador recorre para obter informação a partir da base de dados. Categorias de linguagens Linguagens Teóricas Procedimentais Declarativas

Leia mais

Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance.

Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance. Histórico Foi introduzido por Codd (1970) Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance. É um modelo formal, baseado na teoria matemática das relações

Leia mais

Álgebra Relacional e SQL operações de interesse

Álgebra Relacional e SQL operações de interesse Álgebra Relacional e SQL operações de interesse Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta

Leia mais

O Modelo e a Álgebra Relacional

O Modelo e a Álgebra Relacional O Modelo e a Álgebra Relacional O Modelo Relacional Modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas Baseado em lógica de predicados e na teoria de conjuntos.

Leia mais

Álgebra Relacional e SQL

Álgebra Relacional e SQL Álgebra Relacional e SQL Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta procedural usuários

Leia mais

ÁLGEBRA E CÁLCULO RELACIONAL

ÁLGEBRA E CÁLCULO RELACIONAL UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO ÁLGEBRA E CÁLCULO RELACIONAL MARINGÁ 2014 SUMÁRIO SUMÁRIO...1 1 INTRODUÇÃO...2 1.1

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

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora...

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora... Ciência da Computação GBC043 Sistemas de Banco de Dados Linguagens formais de Consulta Modelo Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019

Leia mais

Banco de Dados I Álgebra Relacional

Banco de Dados I Álgebra Relacional Banco de Dados I Álgebra Relacional Frederico Queiroga fredericoqueiroga@gmail.com https://sites.google.com/site/fredericoqueiroga/ Álgebra Relacional Álgebra Relacional: conjunto de operações que podem

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

- SQL Linguagem de Manipulação de Dados

- SQL Linguagem de Manipulação de Dados - SQL Linguagem de Manipulação de Dados Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SELECT SELECT FROM [ WHERE predicado

Leia mais

Modelo Relacional - Manipulação

Modelo Relacional - Manipulação Modelo Relacional - Manipulação Duas categorias de linguagens formais álgebra relacional e cálculo relacional comerciais (baseadas nas linguagens formais) SQL Linguagens formais - Características orientadas

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

Álgebra Relacional. Introdução. Introdução. Álgebra Relacional

Álgebra Relacional. Introdução. Introdução. Álgebra Relacional Pós-graduação em Ciência da Computação CCM-205 Sistema de Bancos de Dados O que foi visto até agora... Álgebra Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala

Leia mais

ρ x (r) ρ cliente2 (cliente) Pode haver ambiguidade quando a mesma relação aparece mais de uma vez em uma consulta. Nesses casos renomear relação.

ρ x (r) ρ cliente2 (cliente) Pode haver ambiguidade quando a mesma relação aparece mais de uma vez em uma consulta. Nesses casos renomear relação. Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 14 Álgebra Relacional Operações Renomear e Operações Binárias Banco de Dados / 2 Operação Renomear Pode haver ambiguidade quando

Leia mais

ANÁLISE E PROJETO DE BANCO DE DADOS

ANÁLISE E PROJETO DE BANCO DE DADOS ANÁLISE E PROJETO DE BANCO DE DADOS ÁLGEBRA E CÁLCULO RELACIONAL FELIPE G. TORRES APRESENTAÇÃO Avaliações AV1 AV2 TRAB1 TRAB2 REFERÊNCIAS GRAVES, M. Projeto de Banco de Dados com XML. São Paulo: Makron

Leia mais

Projecção Generalizada

Projecção Generalizada Projecção Generalizada Permite a utilização de funções aritméticas na lista de projecção. Π f1,f 2,...,f n (E) E é uma expressão arbitrária de álgebra relacional. Cada uma das expressões f 1, f 2,...,

Leia mais

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU Aula 8 BD1 Álgebra Relacional Profa. Elaine Faria UFU - 2018 Introdução Linguagens de consulta formais associadas ao modelo relacional Álgebra Usa uma coleção de operadores e cada consulta descreve um

Leia mais

Universidade Veiga de Almeida

Universidade Veiga de Almeida Banco de Dados II Universidade Veiga de Almeida Banco de Dados II Prof. Luiz Antônio Vivacqua C. Meyer (luiz.vcm@gmail.com) Linguagens de Consulta Linguagens nas quais os usuários fazem requisições de

Leia mais

mod._1_teoria_sistemas de bancos de dados.doc

mod._1_teoria_sistemas de bancos de dados.doc SISTEMAS DE BANCOS DE DADOS Os Sistemas de Bancos de Dados apareceram para acabar com os problemas e desvantagens dos tradicionais Sistemas de Processamento de Arquivos, onde os registros permanentes eram

Leia mais

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional Banco de Dados Prof. Célio R. Castelano Página 1 de 9 Álgebra Relacional A álgebra relacional é uma linguagem procedural, que possui uma coleção de operações que são utilizadas para manipular relações

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento Professora: Valéria Gonçalves Soares valeria@dimap.ufrn.br Conjunto de Entidades Fracas Um conjunto de entidades pode não ter atributos suficientes para formar uma chave

Leia mais

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Operações

Leia mais

Revisando Banco de Dados. Modelo Relacional

Revisando Banco de Dados. Modelo Relacional : Revisando Banco de Dados Banco de Dados (BD) é o arquivo físico, em dispositivos periféricos, onde estão armazenados os dados de diversos sistemas, para consulta e atualização pelo usuário. Sistema Gerenciador

Leia mais

Informática Fundamentos em C++ Revisão 1

Informática Fundamentos em C++ Revisão 1 exatasfepi.com.br Informática Fundamentos em C++ Revisão 1 André Luís Duarte Feliz é o homem que acha sabedoria, e o homem que adquire entendimento; Provérbios 3:13 Conceitos em Programação Técnicas de

Leia mais

Capítulo 2 Modelo Entidade- Relacionamento. Prof. Mario Dantas

Capítulo 2 Modelo Entidade- Relacionamento. Prof. Mario Dantas Capítulo 2 Modelo Entidade- Relacionamento Prof. Mario Dantas Modelo Entidade-Relacionamento O que vem a ser : Um modelo? Uma entidade? Um relacionamento? Modelo Entidade-Relacionamento Conjunto de entidades

Leia mais

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi Banco de Dados II Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Álgebra Relacional Linguagem de consulta procedural; Consiste em um conjunto básico de operações,

Leia mais

Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas.

Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas. Teoria dos Conjuntos Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas. Porém, não é nosso objetivo ver uma teoria axiomática dos conjuntos.

Leia mais

ACH2025. Aula 11. Visões. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO

ACH2025. Aula 11. Visões. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO ACH2025 Laboratório de Bases de Dados Aula 11 Visões Professora: Fátima L. S. Nunes Introdução Nos exemplos mostrados nas aulas anteriores, consideramos o modelo lógico relações usadas são aquelas reais,

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Modelo Entidade-Relacionamento (ER) Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd

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

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro Definição: colecção de operadores que tomam relações como seus operandos e retornam relações como resultados Cada operador da álgebra aceita como argumentos instâncias

Leia mais

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

Banco de Dados I Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 2) Clodis Boscarioli Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional (Aula 2) Clodis Boscarioli Agenda: O Modelo Relacional; Mapeamento do ME-R para o MR. Estrutura Básica Um banco de

Leia mais

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo. Banco de Dados I Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo Álgebra Relacional Modelo Relacional - Manipulação Categorias

Leia mais

EXPRESSÕES RELACIONAIS

EXPRESSÕES RELACIONAIS AULA 7 EXPRESSÕES RELACIONAIS 7.1 Operadores relacionais Uma expressão relacional, ou simplesmente relação, é uma comparação entre dois valores de um mesmo tipo. Esses valores são representados na relação

Leia mais

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Introdução

Leia mais

Aulas 10 e 11 / 18 e 20 de abril

Aulas 10 e 11 / 18 e 20 de abril 1 Conjuntos Aulas 10 e 11 / 18 e 20 de abril Um conjunto é uma coleção de objetos. Estes objetos são chamados de elementos do conjunto. A única restrição é que em geral um mesmo elemento não pode contar

Leia mais

AEDI Fundamentos Revisão 1

AEDI Fundamentos Revisão 1 exatasfepi.com.br AEDI Fundamentos Revisão 1 André Luís Duarte Feliz é o homem que acha sabedoria, e o homem que adquire entendimento; Provérbios 3:13 Conceitos em Programação Técnicas de algoritmos Descrição

Leia mais

CAI Fluxograma Revisão 7

CAI Fluxograma Revisão 7 exatasfepi.com.br CAI Fluxograma Revisão 7 André Luís Duarte O coração do entendido adquire o conhecimento, e o ouvido dos sábios busca a sabedoria. Pv 18:15 Fluxograma Introdução Formas básicas Estrutura

Leia mais

Atualização e Inserção de Dados. SQL Avançado. Pedro F. Carvalho OCP Oracle g

Atualização e Inserção de Dados. SQL Avançado. Pedro F. Carvalho OCP Oracle g Pedro F. Carvalho OCP Oracle 2008.2 10g SQL Avançado Atualização e Inserção de Dados Comando INSERT Sumário Inclusão simples, inclusão de dados com SELECT Comando UPDATE Alteração simples, alteração usando

Leia mais

Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan Unidade 6.2 Álgebra Relacional - Junção PACIENTE cod-pac

Leia mais

Introdução ao Banco de Dados. Banco de Dados

Introdução ao Banco de Dados. Banco de Dados Introdução ao Banco de Dados Prof. Tiago Garcia de Senna Carneiro UFOP Prof. Técnicas de Programação II 2006 PARTE 1: Conceitos Básicos Banco de Dados SGDB: Sistema Gerenciador de Banco de Dados Definição:

Leia mais

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação 1/5 Universidade Federal da Bahia Disciplina: Banco de Dados Prof a. Daniela Barreiro Claro ALGEBRA RELACIONAL Duas linguagens formais do Modelo Relacional o Álgebra Relacional e Cálculo Relacional Álgebra

Leia mais

5. Expressões aritméticas

5. Expressões aritméticas 5. Expressões aritméticas 5.1. Conceito de Expressão O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis

Leia mais

Administração de. José Antônio da Cunha CEFET-RN

Administração de. José Antônio da Cunha CEFET-RN Administração de Banco de Dados José Antônio da Cunha CEFET-RN O Otimizador de um Sistema de Gerenciamento de Banco de Dados Relacionais (SGBDR) é responsável por analisar uma consulta SQL e escolher qual

Leia mais

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

Banco de Dados. Aula 8 - Prof. Bruno Moreno 16/09/2011 Banco de Dados Aula 8 - Prof. Bruno Moreno 16/09/2011 Plano de Aula Operações Unárias Seleção Projeção Operações de seleção e projeção seqüenciadas Operação Rebatizar Operações Binárias União Interseção

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se

Leia mais

Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira

Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira Unidade 2 Modelo Relacional Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira Material base: Banco de Dados, 2009.2, prof. Otacílio José Pereira

Leia mais

Álgebra Relacional e Cálculo Relacional

Álgebra Relacional e Cálculo Relacional SISTEMAS DE INFORMAÇÃO Álgebra Relacional e Cálculo Relacional Prof. Edson Thizon Linguagens de consultas formais (1) Uma linguagem de consulta (Query Language) é uma linguagem com a qual o usuário pode

Leia mais

Operações Estendidas da Álgebra Relacional

Operações Estendidas da Álgebra Relacional Consultas de exemplo Operações Estendidas da Álgebra Relacional Quais os fármacos alguma vez prescritos por cardiologistas? Π nomef (farmacos receitas consultas σ especialidade cardiologia (medicos)) Aumentam

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2 Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador

Leia mais

BDI Capitulo 2 Revisão 9

BDI Capitulo 2 Revisão 9 exatasfepi.com.br BDI Capitulo 2 Revisão 9 André Luís Duarte Capítulo 2 Eu é que sei os pensamentos que tenho a vosso respeito... pensamentos de bem e não de mal... (Jr 29:11) Modelo Conceitual Abstração

Leia mais

ACH2025. Laboratório de Bases de Dados Aula 15. Processamento de Consultas Parte 2 Otimização. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO

ACH2025. Laboratório de Bases de Dados Aula 15. Processamento de Consultas Parte 2 Otimização. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO ACH2025 Laboratório de Bases de Dados Aula 15 Processamento de Consultas Parte 2 Otimização Professora: Fátima L. S. Nunes Contexto Dada uma expressão em álgebra relacional, o otimizador deve propor um

Leia mais

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos Banco de dados BD Banco de dados Objetivo: Armazenar dados Consultar dados (dentro de um determinado contexto) gerando informações úteis Reter os dados de forma que possam ser utilizados em outros momentos

Leia mais

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos Banco de dados BD Dados x Informações Banco de dados Objetivo: Armazenar dados Consultar dados (dentro de um determinado contexto) gerando informações úteis Reter os dados de forma que possam ser utilizados

Leia mais

24/09/2014. Prof. André Backes

24/09/2014. Prof. André Backes Prof. André Backes 1 Por que usar listas? As variáveis declaradas até agora são capazes de armazenar um único valor por vez. Sempre que tentamos armazenar um novo valor dentro de uma variável, o valor

Leia mais

Sistemas de Arquivos Convencionais

Sistemas de Arquivos Convencionais SGBDs Sistemas de Arquivos Convencionais Características: Vários arquivos, diferentes programas para recuperar informações Desvantagens: Redundância e inconsistência de dados Dificuldade de acessar informação

Leia mais

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE CARACTERISTICA DE UMA TABELA: NÃO EXISTEM DUAS LINHAS IGUAIS A ORDEM DAS LINHAS É INSIGNIFICANTE A ORDEM DAS COLUNAS É INSIGNIFICANTE

Leia mais

Mapeamento Modelo Entidade Relacionamento para Modelo Relacional. Evandro E.S Ruiz, Ph.D.

Mapeamento Modelo Entidade Relacionamento para Modelo Relacional. Evandro E.S Ruiz, Ph.D. Mapeamento Modelo Entidade Relacionamento para Modelo Relacional Evandro E.S Ruiz, Ph.D. evandro@usp.br 1 Objetivo Projetar um esquema de BD Relacional Base: projeto conceitual usando modelo ER (ou EER,

Leia mais

Manipulação de Dados com SQL

Manipulação de Dados com SQL Manipulação de Dados com SQL Wendel Melo Faculdade de Computação Universidade Federal de Uberlândia www.facom.ufu.br/~wendelmelo Banco de Dados I manipulação de dados com SQL 2 Structured Query Language

Leia mais

Instruções, dados e expressões

Instruções, dados e expressões Instruções, dados e expressões Marina Andretta ICMC-USP 1 de março de 2016 Marina Andretta (ICMC-USP) sme0230-ipc 1 de março de 2016 1 / 50 Dados Um computador manipula informações presentes em sua memória.

Leia mais

PC Fluxograma Revisão 8

PC Fluxograma Revisão 8 exatasfepi.com.br PC Fluxograma Revisão 8 André Luís Duarte O coração do entendido adquire o conhecimento, e o ouvido dos sábios busca a sabedoria. Pv 18:15 Fluxograma Introdução Formas básicas Estrutura

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4 Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para

Leia mais

Matemática Discreta - 07

Matemática Discreta - 07 Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta - 07 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Até o momento da disciplina vimos comandos de entrada, processamento e saída

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

Modelo Relacional Prof. Msc Denival A. dos Santos

Modelo Relacional Prof. Msc Denival A. dos Santos Modelo Relacional Prof. Msc Denival A. dos Santos Introdução Criado por Edgar F. Codd em 70 (primeiros sistemas relacionais: 1977 78: System R e Ingres); O modelo relacional é um modelo lógico fundamentado

Leia mais

Rápida revisão do Modelo Relacional

Rápida revisão do Modelo Relacional Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Modelo ER & Modelo Relacional Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 18 de

Leia mais

Manipulando a base de dados

Manipulando a base de dados Manipulando a base de dados Uma base de dados pode ser manipulada com quatro operações básicas: Incluir, Apagar, Alterar e Pesquisar. Vale lembrar que como toda linguagem para computadores, o MySQL tem

Leia mais

Modelo de Dados Relacional

Modelo de Dados Relacional Modelo de Dados Relacional Introdução O modelo relacional representa um banco de dados como um conjunto de relações Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção

Leia mais

Introdução a Bancos de Dados. - Conceitos - Modelos lógicos e relacional - Álgebra relacional -SQL - Projeto Lógico

Introdução a Bancos de Dados. - Conceitos - Modelos lógicos e relacional - Álgebra relacional -SQL - Projeto Lógico Introdução a Bancos de Dados - Conceitos - Modelos lógicos e relacional - Álgebra relacional -SQL - Projeto Lógico Sistemas de Banco de Dados Definição: Coleção de dados inter-relacionados e procedimentos

Leia mais

Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre.googlepages.

Variáveis e Entrada de Dados Marco André Lopes Mendes  marcoandre.googlepages. Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre@ifc-araquari.edu.br marcoandre@gmail.com marcoandre.googlepages.com Algoritmos é a base Primeiro programa Este programa possui apenas uma

Leia mais

Álgebra Relacional. Índice. Sistemas de Bases de Dados. Orlando Belo

Álgebra Relacional. Índice. Sistemas de Bases de Dados. Orlando Belo Sistemas de Bases de Dados Edição 2004 Álgebra Relacional Orlando Belo Departamento de Informática Escola de Engenharia Universidade do Minho Índice Introdução A Álgebra Relacional Operadores da Álgebra

Leia mais

Classes o Objetos. Classes, objetos, métodos e variáveis de instância

Classes o Objetos. Classes, objetos, métodos e variáveis de instância Classes o Objetos Um recurso comum de cada aplicativo feito até agora é que todas as instruções que realizavam tarefas localizavam-se no método main. Se você tornar parte de uma equipe de desenvolvimento

Leia mais

Algoritmos e Programação I

Algoritmos e Programação I Algoritmos e Programação I Operadores Relacionais, Lógicos e Aritméticos Prof. Fernando Maia da Mota mota.fernandomaia@gmail.com CPCX/UFMS Fernando Maia da Mota 1 Expressões Uma expressão relacional, ou

Leia mais

C A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P

C A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P C A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P SINTAXE BÁSICA Neste capítulo vamos apresentar a estrutura básica do PHP. Para iniciar a construção de um

Leia mais

Introdução a Bancos de Dados

Introdução a Bancos de Dados Introdução a Bancos de Dados - Conceitos - Modelos lógicos e relacional - Álgebra relacional - SQL - Projeto Lógico INPE - Divisão de Processamento de Imagens INPE 1 Sistemas de Banco de Dados Definição:

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Curso EFA Tecnológico Técnico de Informática e Sistemas. - Álgebra Relacional - João Leitão

Curso EFA Tecnológico Técnico de Informática e Sistemas. - Álgebra Relacional - João Leitão Curso EFA Tecnológico Técnico de Informática e Sistemas - Álgebra Relacional - João Leitão Linguagens relacionais Notações para expressar perguntas: algébrica aplicação de operadores a relações lógica

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

Português Estruturado

Português Estruturado Português Estruturado Português Estruturado Para que o algoritmo possa ser executado por uma máquina é importante que as instruções sejam corretas e sem ambigüidades. O português estruturado é, na verdade,

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

23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas

23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas Processamento de Consultas em Bancos de Dados Distribuídos Visão geral do processamento de consultas IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias

Leia mais

Classes. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho

Classes. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Classes BCC 221 - Programação Orientada a Objectos(POO) Guillermo Cámara-Chávez Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Introdução I Estamos acostumados a criar

Leia mais

Modelagem Conceitual e o Modelo Entidade-Relacionamento

Modelagem Conceitual e o Modelo Entidade-Relacionamento o Modelo Entidade-Relacionamento Gerenciamento de Dados e Informação Fernando Fonseca & Robson Fidalgo 1 Modelagem Transformar aspectos do mundo real em um modelo de dados formal Modelagem Conceitual Modelo

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Já vimos entrada, processamento e saída, que compõem os algoritmos puramente

Leia mais

!" # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional

! # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional Nuno Melo e Castro !" # Modelos de dados 1ª geração Modelo Hierárquico Modelo Rede 2ª geração Modelo Relacional 3ª geração Extensões ao modelo relacional Modelo lógico-dedutivo Modelo orientado a objectos

Leia mais