UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO BANCO DE DADOS RELACIONAL ESTENDIDO

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

Download "UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO BANCO DE DADOS RELACIONAL ESTENDIDO"

Transcrição

1 UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO BANCO DE DADOS RELACIONAL ESTENDIDO MAURICIO VOLKWEIS ASTIAZARA IGOR CASA NOVA DOS SANTOS Banco de Dados II Torres, Junho de 2001

2 ,QWURGXomR &RP HVWH WUDEDOKR YLVDPRV FRQKHFHU XP GRV WLSRV GH EDQFR GH GDGRV QmR FRQYHQFLRQDO R PRGHOR UHODFLRQDO HVWHQGLGR 3URFXUDPRV SDVVDU SHOR FRQFHLWR GH EDQFRGHGDGRVUHODFLRQDOHVWHQGLGRFDUDFWHUtVWLFDVWpFQLFDXWLOL]DGDHYDQWDJHQV

3 &RQFHLWR Diversas novas áreas de aplicação para sistemas de banco de dados são limitadas por restrições impostas pelo modelo de dados relacional. Entre essas limitações estão a uniformidade, a orientação a registro e a atomicidade de campos. Notamos que alguns desses aplicativos requerem linguagens com maior poder expressivo do que o SQL ou a álgebra relacional. O modelo orientado a objeto é uma forma de suplantar essas limitações do modelo relacional, porém sacrifica muitas vantagens do modelo relacional, especialmente em processamento de consultas. A solução é uma extensão do modelo relacional, que alarga a aplicabilidade do modelo sem sacrificar o fundamento relacional. Existem diversos tipos de modelos de dados que possuem estas características, cada um utilizando uma técnica diferente para estender o modelo relacional. Veremos os seguintes modelos: Modelo de dados baseado em lógica Modelo relacional encaixado 0RGHORGH'DGRV%DVHDGRHP/yJLFD Para exemplificar este modelo utilizaremos o Datalog, que é uma linguagem de consulta não-procedural baseada na lógica de primeira ordem. O usuário descreve a informação desejada sem dar procedimento específico para obtenção daquela informação. 7pFQLFD Um banco de dados Datalog consiste em dois tipos de relações: Relações Base estão armazenadas no BD, são as tabelas ou entidades do BD relacional (São as vezes chamadas de BDs extencionais (extensional database EBD)); Relações Derivadas não estão necessariamente armazeadas no BD. Elas são usualmente relações temporárias que guardam resultados intermediários computados durante a execução de uma consulta. São as vezes chamados de BD intencional (intentional database - IDB). Estrutura da Consulta Consulta Regra 1 [Programa Datalog] Regra 2 Regra n Instrução de Consulta Regra 1 Regra 2 Regra n Instrução de consulta

4 A consulta é constituída de duas partes: Programa Datalog e Instrução de consulta que são executados nessa ordem. O programa Datalog é um conjunto de regras que envolvem relações base e derivada. Apresenta a seguinte estrutura: Cabeça Corpo NovaRelação : - literal 1, literal 2,..., literal n, predicado Onde: NovaRelação: é uma nova relação derivada, resultado da execução do corpo da regra. É definir por um literal; Relação (1,..., n): é uma relação base ou derivada; Predicado: é uma expressão aritmética sobre uma das variáveis das Relações (1,..., n). Literal: Relação (campo 1, campo 2,..., campo n) Onde: Relação é uma relação base ou derivada; Campo (1,..., n) é uma variável ou uma constante que representa o valor do atributo da relação que está na mesma posição (ordem). Colocando uma variável na posição de certo atributo, indicamos que este atributo poderá conter qualquer valor. Colocando uma constante (valor) indicamos que o atributo deve conter um valor igual ao da constante. A relação só mostrará os registros que atendem as exigências dos atributos, sendo assim usado para definir critérios de consulta. Ex.: sendo a estrutura de uma tabelo chamada depósito: Nome_agência, número, nome_cliente, saldo Podemos utilizar a seguinte relação: Depósito (agência, número, cliente, saldo) Depósito( Tramandaí, X, Y, Z ) Saldo = qualquer valor Cliente = qualquer cliente Número = qualquer número Agência = Tramandaí Observe a correspondência da posição dos atributos com as variáveis/constantes. Este literal indica que da relação Depósito quero somente os registros que possuam agência = Tramandaí. Ex.: Regra Uma vez compreendido os literais, podemos formar uma regra utilizando-os Rel (Y,X): - Depósito ( Tramandaí, X, Y, Z), Z>200 Esta regra indica que a nova relação derivada Rel conterá os campos cliente (Y) e número (X) da relação base Depósito. Sendo que: Da relação Depósito só os registros agência = Tramandaí serão utilizados;

5 Estes registros devem atender ainda a exigência do predicado saldo (Z)>200. Resumo: Rel é uma relação derivada que tem o nome e o número dos clientes que fizeram depósito na agência Tramandaí e com valor maior que 200. Instanciação de uma regra: é o registro que aplicado-se a regra (substituir variáveis pelos seus valores) resulta em verdade (satisfaz as condições da regra). Instrução de Consulta Existem duas maneiras de efetuar a consulta: 1) Indicando-se que queremos consultar determinada relação. Relação (campo 1, campo 2,..., campo n)? Ex.: Depósito ( Tramandaí, X, Y, Z)? Esta instrução não suporta predicado, nem a supressão de campos. 2) Indicando-se que queremos consultar o resultado de uma regra. Query (campo1,..., campo n): - relação 1,..., relação n, predicado Ex.: Query (Y): - Depósito ( Tramandaí, X, Y, Z) Z>1000 Se a consulta não for muito complexa, esta instrução pode dispensar o programa. Ex. Programa: Conhecendo-se a aplicação das regras podemos formar um programa, pois como foi mencionado: um programa é um conjunto de regras. Sendo a base de dados uma editora de revistas: Cliente (cliente, cidade, fone, renda, número_revistas) Tabela de assinantes ou ex-assinantes de revista da editora Interesse (cliente, interesse) Interesse dos clientes (Ex.: política, ciência, informática. Etc.) Assinatura (cliente, revista) Revista que o cliente assina. Vamos elaborar um programa que ao final tenha uma relação que contenha o nome e o fone dos clientes que tem renda maior que R$ 1000 e interesse em informática. R1 (N,F): - Cliente (N, C, F, R), R>1000 R2 (N,F): - Interesse (N, informática ), R1 (N,F) A relação R2 atende o que foi especificado. Importante observar que as variáveis de mesmo nome são as mesmas, portanto representando o mesmo valor. No corpo da última regra a variável N aparece no atributo cliente da relação Interesse e também na relação R1 indicando valores iguais, assim será formada uma junção entre Interesse e R1. Utilizando programa e instrução de consulta podemos formar uma consulta completa. Vejamos os exemplos a seguir: Consultar nome e fone dos clientes da cidade de Torres que tem renda maior que 1500 e assinam menos de 3 revistas.

6 X (Vcliente, Vfone, Vnúmero): - Cliente (Vcliente, Torres, Vfone, Vrenda, Vnúmero), Vrenda>1500 Y (Vcliente, Vfone): - X (Vcliente, Vfone, Vnúmero), Vnúmero<3 Y (Vcliente, Vfone)? Uma expressão equivalente usando a instrução de consulta query ao invés de? poderia ser: X (Vcliente, Vfone, Vnúmero): - Cliente (Vcliente, Torres, Vfone, Vrenda, Vnúmero), Vrenda>1500 Query (Vcliente, Vfone): - X (Vcliente, Vfone, Vnúmero), Vnúmero<3 Operações Algébricas de Consulta 3URGXWRFDUWHVLDQR O produto cartesiano entre duas relações dá-se da seguinte forma: RelProduto (X1,..., Xn, Y1,..., Yn): - rel1 (X1,..., Xn), rel2 (Y1,...,Yn) Onde Xi e Yi são variáveis distintas 8QLmR Produzir uma relação de união entre duas regras dá-se utilizando a mesma cabeça para o corpo das duas regras. <observar a diferença da atribuição> RelUnião (X1,..., Xn): - rel1 (X1,..., Xn), predicado RelUnião (X1,..., Xn): - rel2 (X1,..., Xn), predicado Ex.: Consultar nome e renda de todos os clientes de Torres e Tramandaí. Rel (A,D): - Cliente (A, Torres, C, D, E) Rel (A,D): - Cliente (A, Tramandaí, C, D, E) Outra forma equivalente seria usar a instrução query: Query (A,D) : - Cliente (A, Torres, C, D, E) Query (A,D) : - Cliente (A, Tramandaí, C, D, E) 'LIHUHQoDH1HJDomR Para encontrar a diferença entre duas relações é necessário o uso do operador de negação, representado pelo símbolo. RelDif (X1,..., Xn): - R1 (X1,..., Xn), R2 (X1,..., Xn) O conjunto das variáveis que aparece em R1 e R2 deve ser o mesmo. Ex.: Consultar o nome dos clientes que tem interesse em informática mas não assinam a revista Guia Digital. A(X): - Interesse (X, informática ) B(X): - Assinatura (X, Guia Digital ) C(X): - A(X), B(X) Na última relação acima o X satisfará a regra quando ocorrer em A mas não ocorrer em B. Recursão O Datalog permite a utilização de consultas recursivas ampliando o seu poder de expressão. Isto significa que podemos propor algumas questões para o banco de dados que podem ser respondidas em Datalog, mas não na álgebra relacional.

7 Vejamos um exemplo de sua utilização: Uma tabela de funcionários contendo o seu nome e o nome de seu gerente direto (primeiro acima dele). Este gerente também é um funcionário e está armazenado nesta mesma tabela, podendo ele também ter um superior, formando assim uma hierarquia gerencial. Funcionário (nome, gerente) Exemplo de ocorrências nesta tabela: 1RPH Bia Bernardo Célia Carlos Valter Mauro Daniela Eduardo Fábio Vanessa José Ana João Lúcia *HUHQWH Alfredo Alfredo Bia Bia Bernardo Bernardo Célia Carlos Carlos Valter Valter Eduardo Eduardo Fábio Para obtermos o nome de todos os funcionários trabalhando diretamente abaixo de Bia (primeiro nívvel de funcionários de Bia) poderíamos construir a seguinte consulta: Query (X): - Funcionário (X, Bia ) Para obtermos os nomes dos funcionários cujo gerente direto trabalha sob Bia (segundo nível de funcionários de Bia) escrevemos: Query (X): - Funcionário (X,Y), Funcionário (Y, Bia ) Seguindo essa lógica poderíamos elaborar uma consulta para qualquer nível de funcionários sob Bia. Isto também poderia ser feito na álgebra relacional. Porém para obter o nome dos funcionários de todos os níveis sob Bia não seria possível, pois não se sabe o maximo sob Bia. Com o Datalog esta consulta é possível utilizando recursividade. Ela poderia apresentar a seguinte formulação: Rel (X): - Funcionário (X, Bia ) Rel (X): - Funcionário (X, Y), Rel (Y) Query (X): - Rel(X) RXRel (X)? Observe que esta consulta é recursiva. Primeiro, são adicionados a relação Rel todos os funcionários do primeiro nível sob Bia. Depois é efetuada uma união com os funcionários sob os da relação Rel, adicionando a Rel os funcionários de segundo nível. Como o conteúdo de Rel é acrescido do segundo nível, os funcionários do nível abaixo deste (terceiro) também serão acrescidos, assim sucessivamente até que não haja nenhum nível mais baixo.

8 Funcionários sob Rel são procurados e quando encontrados são adicionados a Rel. 9DQWDJHQV A possibilidade de realizar consultas recursivas aumenta as possibilidades de modelagem e consulta. Devido à proximidade com a álgebra relacional possibilita uma pré-otimização da consulta aplicando-se as regras de otimização algébrica. 0RGHOR5HODFLRQDO(QFDL[DGR &DUDFWHUtVWLFDV A hipótese da primeira forma normal (1FN) diz que os atributos devem ter domínios atômicos, ou seja, o domínio deve ser unidade indivisível possuindo um valor único, não é permitido algo como um array de valores. Entretanto, os exemplos que motivaram novas aplicações de banco de dados nem sempre são compatíveis com a hipótese da 1FN. Em vez de ver o banco de dados como um conjunto de registros, usuários das novas aplicações encaram o banco de dados como um conjunto de objetos. Esses objetos requerem diversos registros para suas representações. O modelo relacional encaixado é uma extensão do módulo relacional no qual os domínios podem ser valores atômicos ou assumirem valores que são relações. Assim o valor de um atributo pode ser uma relação, e o valor de um atributo dessa relação pode ser outra relação. Isto permite a construção de um objeto complexo que pode ser representado em uma única tupla de uma relação encaixada. 7pFQLFD Para mostrar a implementação de um modelo relacional encaixado vamos examinar o exemplo de um banco de dados que deve armazenar informações sobre documentos. Para cada documento são armazenadas as seguintes informações: Título do documento Lista de autores Data Lista de palavras-chave, palavras relativas ao assunto que o documento trata. A relação não normalizada e com duas ocorrências de documentos ficaria assim:

9 Doc, não normalizada 7tWXOR /LVWDB$XWRU 'DWD /LVWDB3DODYUDFKDYH Plano de venda {Samuel, João} 1/Abril/95 {Lucro, Estratégia} Relatório geral {João, Fábio} 17/Junho/97 {Lucro, Pessoal} Observe que o atributo Autor - lista é multivalorado: um documento tem vários autores, portanto não é atômico. O mesmo ocorre com Palavra-chave - lista. Já data não é um atributo multivalorado mas pode ser dividido em 3 fragmentos, subcampos. Pelo modelo relacional tradicional, a mesma relação Doc na 1FN seria: Doc1 (1FN) 7tWXOR $XWRU 'LD 0rV $QR 3DODYUDFKDYH Plano de venda Samuel 1 Abril 95 Lucro Plano de venda João 1 Abril 95 Lucro Plano de venda Samuel 1 Abril 95 Estratégia Plano de venda João 1 Abril 95 Estratégia Relatório geral João 17 Junho 97 Lucro Relatório geral Fábio 17 Junho 97 Lucro Relatório geral João 17 Junho 97 Pessoal Relatório geral Fábio 17 Junho 97 Pessoal Agora a versão Doc na 4FN: Doc4 (4FN)

10 7tWXOR Plano de venda Plano de venda Relatório geral Relatório geral $XWRU Samuel João João Fábio 7tWXOR Plano de venda Plano de venda Relatório geral Relatório geral 3DODYUDFKDYH Lucro Estratégia Lucro Pessoal 7tWXOR 'LD 0rV $QR Plano de venda 1 Abril 95 Relatório geral 17 Junho 97 Como foi dito anteriormente o modelo relacional encaixado permite a implementação de relações com atributos multivalorados, que ao invés de conter um domínio atômico possui uma relação. A definição do esquema de Doc é a seguinte: Doc=(Título, Lista_Autor, Data, Lista_Palavra-chave) Lista_Autor=(Autor) Data=(Dia, Mês, Ano) Lista_Palavra-chave=(Palavra-chave) Onde: Doc tem 4 atributos; O atributo título tem domínio atômico; Os outros atributos tem domínios com valores que são relações, que são definidas logo abaixo; Uma relação lista_autor é simplesmente um conjunto de autores; O mesmo ocorre com o atributo lista_palavra-chave; Já a data é definida por 3 atributos (Dia, Mês e Ano). Note que deste modo é permitido a um documento ter um conjunto de datas, porém no nosso exemplo somente uma data para cada documento é necessária. Linguagem de Consulta Relacional Encaixada A linguagem de consulta que utilizaremos para ilustrar o Modelo Relacional Encaixado é a SQL/NF (Nested Form), que é uma versão da SQL estendida para incorporar operações relacionais encaixadas, existem outras como a XSQL e novas linguagens estão em fase de desenvolvimento. Enquanto no SQL padrão só eram permitidos atributos na cláusula select e somente relações na cláusula from, a SQL/NF não faz diferença entre relações e atributos. Para realizar a seguinte consulta Dê o título de todos os documentos escritos por João que dizem respeito a lucro é utilizada a seguinte instrução: select Título from Doc

11 where João in Lista_Autor and Lucro in Lista_Palavra-chave Considerando uma modificação na consulta para Dê o ano de publicação dos documentos escritos por João que dizem respeito a lucro : select Título, (select ano from data) from Doc where João in Lista_Autor and Lucro in Lista_Palavra-chave Na SQL padrão as funções de agregação (avg, min, max, sum, count) tomam um conjunto como argumento e retornam um valor como seu resultado. A SQL/NF permite que estas funções sejam aplicadas a qualquer expressão que dê uma relação como resultado. Vamos observar um exemplo do uso dessas funções na elaboração da seguinte consulta Dê o título e número de autores de cada documento : select Título, count (Lista_Autor) from Doc É permitido ainda que condições sobre conjuntos, que em SQL padrão são usadas nas cláusulas having, sejam diretamente colocadas na cláusula where. Considerando o esquema de banco de dados abaixo, examinemos o exemplo: Jogador (nome, pontuação) pontuação (rodada, pontos) Consultar o nome e total de pontos dos jogadores com mais de 100 pontos. select nome, sum (select pontos from pontuação) from Jogador where sum (select pontos from pontuação)>100 Como um modelo relacional estendido, o modelo relacional encaixado deve permitir compatibilidade com o modelo relacional tradicional, por isso existem os operadores desencaixar (unnest) e encaixar (nest). Com o operador desencaixar podemos transformar uma tabela que está modelada de forma encaixada (não normalizada) em uma na 1FN. Ele possui a seguinte sintaxe em SQL/NF: unnest <tabela> on <campo> as <novo campo> Relação Encaixada Campo multivalorados Novo campo atômico Por exemplo desencaixar a lista de autores em único campo para a relação Doc: unnest Doc on Lista_Autor as Autor O operador encaixar possui sintaxe semelhante ao do desencaixar. Com ele transformamos uma tabela normalizada em uma encaixada (não normalizada).

12 nest <tabela> on <campo> as <novo campo> Relação a ser encaixada Campo, ou campos a serem a agrupados em um único Novo campo que será o resultado do encaixe Para gerar a relação Doc a partir de Doc1 (na 1FN) utilizamos os seguinte comandos de encaixe: Nest (nest (nest (Doc1 on Autor as Lista_Autor) on Palavra-chave as Lista_Palavra-chave) on Dia, Mês, Ano as Data As operações encaixar e desencaixar podem ser usadas nas consultas. Considerando o banco de dados abaixo: Cliente (codcliente, nome, fone) NF (codcliente, data, valor) Vejamos a consulta Dê o nome e a média de compras de cada cliente : Select nome, avg (valor_total) From (nest (select nome, valor, codcliente from Cliente, NotaFiscal where Cliente.codcliente=NotaFiscal.codcliente) on valor as valor total) Assim pode-se trabalhar de forma encaixada mesmo quando as relações estão modeladas na forma relacional tradicional (normalizadas). Como de pode notar, com SQL/NF e o modelo encaixado não é necessário o uso dos comandos group by e having, mesmo assim eles estão presentes na SQL/NF para manter a compatibilidade. 9DQWDJHQV Embora as relações normalizadas possam representar adequadamente um banco de dados, a representação não normalizada pode ser um modelo de mais fácil entendimento e mais intuitivo, uma vez que o usuário típico de um sistema pensa na organização das informações no modo não normalizado. A representação em 4FN exigiria que os usuários incluíssem junções nas suas consultas, complicando a iteração com o sistema. Uma visão definida poderia eliminar a necessidade das junções nas consultas, porém ocorre a perda da representação em uma única tupla. O modelo encaixado permite ainda total compatibilidade com o modelo relacional tradicional podendo transformar as relações em 4FN para encaixadas e vice versa.

13 &RQFOXVmR Com a disseminação da informática os sistemas automatizados de informação estão sendo aplicados às mais diferentes áreas, das ciências humanas à neurologia, não ficando mais restritos à aplicação comercial. Neste contexto, os analistas podem se deparar com sistemas que requerem um banco de dados com características especiais no modo de tratar e organizar as informações. Nesse caso os bancos de dados relacionais estendidos são importantes opções que devem ser levadas em conta. Por serem uma extensão do modelo relacional é provável que não ocorra nenhum trauma na transição de um modelo para o outro, tanto para o analista quanto para os usuários, sendo este grande fator a favor dos bancos de dados relacionais estendidos.

14 %LEOLRJUDILD 1. KORTH, Henry F.; SILBERSCHATZ, Abraham. Sistema de Banco de Dados. 2 ed. São Paulo: Makron, ed. São Paulo: Makron, 1999.

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

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas: Álgebra Relacional Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída operação (REL 1 ) REL 2 operação (REL 1,REL 2 ) REL 3 Operações básicas: seleção projeção

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

Tarefa Orientada 16 Vistas

Tarefa Orientada 16 Vistas Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um

Leia mais

Tarefa Orientada 13 Agrupamento e sumário de dados

Tarefa Orientada 13 Agrupamento e sumário de dados Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os

Leia mais

NOME SEXO CPF NASCIMENTO SALARIO

NOME SEXO CPF NASCIMENTO SALARIO Tutorial SQL Fonte: http://www.devmedia.com.br/articles/viewcomp.asp?comp=2973 Para começar Os Sistemas Gerenciadores de Bancos de Dados Relacionais (SGBDr) são o principal mecanismo de suporte ao armazenamento

Leia mais

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

SQL Linguagem de Manipulação de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Manipulação de Dados Banco de Dados SQL DML SELECT... FROM... WHERE... lista atributos de uma ou mais tabelas de acordo com alguma condição INSERT INTO... insere dados em uma tabela DELETE

Leia mais

SQL Comandos para Relatórios e Formulários. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Comandos para Relatórios e Formulários. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Comandos para Relatórios e Formulários Laboratório de Bases de Dados SELECT SELECT FROM [ WHERE predicado ] [ GROUP BY ]

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

SQL UMA ABORDAGEM INTERESSANTE

SQL UMA ABORDAGEM INTERESSANTE SQL é uma linguagem de consulta estruturada, do inglês Structured Query Language. É uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características

Leia mais

Banco de dados 1. Linguagem DML SQL Select Avançado. Professor: Victor Hugo L. Lopes

Banco de dados 1. Linguagem DML SQL Select Avançado. Professor: Victor Hugo L. Lopes Banco de dados 1 Linguagem DML SQL Select Avançado Professor: Victor Hugo L. Lopes Agenda: -União de tabelas em consultas; -Joins. 2 Até este momento, vimos as capacidades da SQL de completa manipulaçã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

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Agenda Estrutura Básica de consultas SQL: A cláusula SELECT; A cláusula FROM; A cláusula WHERE. Operação com cadeias

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

BANCO DE DADOS aula 6 álgebra relacional -

BANCO DE DADOS aula 6 álgebra relacional - INSTITUTO DE EXATAS E TECNOLÓGICAS Curso de Ciência da Computação BANCO DE DADOS aula 6 álgebra relacional - professor: Juliano Varella de Carvalho 5.1. Álgebra Relacional relações de exemplo conta agencia

Leia mais

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

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

SQL DML. Frederico D. Bortoloti freddb@ltc.ufes.br

SQL DML. Frederico D. Bortoloti freddb@ltc.ufes.br Banco de Dados I SQL DML Frederico D. Bortoloti freddb@ltc.ufes.br SQL - DML Os exemplos da aula serão elaborados para o esquema de dados a seguir: Empregado(matricula, nome, endereco, salario, supervisor,

Leia mais

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

Banco de Dados I 2007 Módulo III: Linguagens de Consulta. (Aula 9) Clodis Boscarioli Banco de Dados I 2007 Módulo III: Linguagens de Consulta (Aula 9) Clodis Boscarioli Agenda: QBE (Query-by-Example) Histórico e Características; Notações; Exemplos da linguagem; Ferramentas que suportam

Leia mais

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1 IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1 Banco de Dados Fundamentos de SQL Structured Query Language Aula2 Apresentado por: Robson do Nascimento Fidalgo rdnf@cin.ufpe.br IF685

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através

Leia mais

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

Banco de Dados I 2007. Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 3) Clodis Boscarioli Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional (Aula 3) Clodis Boscarioli Agenda: Exercícios de Mapeamento ME-R para MR; Restrições de Domínio; Restrições de Chave

Leia mais

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo CEFET.PHB - PI Plano de Ensino Banco de Dados Prof. Jefferson Silva Sistema de Banco de Dados Objetivos Vantagens e Desvantagens Conceitos básicos de BD e de SGBD Abstração de Dados Linguagem de Definição

Leia mais

Tarefa Orientada 14 Subconsultas

Tarefa Orientada 14 Subconsultas Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta

Leia mais

Introdução às Bases de Dados

Introdução às Bases de Dados Introdução às Bases de Dados Chave primária Domínios Relação F# F Nome Estado Cidade F1 José 20 Braga F2 João 10 Faro F3 Luís 30 Lisboa F4 Rui 30 Setúbal Atributos Tuplas Introdução às Bases de Dados Modelo

Leia mais

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Casos de Uso de Alto Nível Prof. Raul Sidnei Wazlawick UFSC-CTC-INE 2010 Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Contexto Na fase de concepção

Leia mais

Uma expressão básica em SQL consiste em três cláusulas: select, from e where.

Uma expressão básica em SQL consiste em três cláusulas: select, from e where. Introdução a Banco de Dados O.K. Takai; I.C.Italiano; J.E. Ferreira. 67 8 A Linguagem SQL A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

BDII SQL Junção Revisão 8

BDII SQL Junção Revisão 8 exatasfepi.com.br BDII SQL Junção Revisão 8 André Luís Duarte Leais são as feridas feitas pelo amigo, mas os beijos do inimigo são enganosos. Provérbios 27:6 SQL Introdução Produto cartesiano Nomes alternativos

Leia mais

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

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância

Leia mais

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

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs. 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 OBJETIVOS Orientações

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

TOTVS BA Guia de Customização Linha Logix

TOTVS BA Guia de Customização Linha Logix TOTVS BA Guia de Customização Linha Logix Guia de Customização Sumário Título do documento 1. Objetivo... 3 2. Introdução... 3 3. Customização... 3 2 TOTVS BA Linha Logix Guia de Customização Projeto/Versão:

Leia mais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos Introdução Banco de Dados Por que usar BD? Vitor Valerio de Souza Campos Adaptado de Vania Bogorny 4 Por que estudar BD? Exemplo de um BD Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

Introdução ao SQL Avançado

Introdução ao SQL Avançado Introdução ao SQL Avançado Introdução as consultas, manipulação e a filtragem de dados com a linguagem SQL Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. 1 Diagrama de Classes Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. Um dos objetivos do diagrama de classes é definir a base para

Leia mais

Cálculo utilizando variáveis do tipo DATA

Cálculo utilizando variáveis do tipo DATA Cálculo utilizando variáveis do tipo DATA Pré requisitos: Elaboração de questionário Análise de resultados Visões: relatórios multimídia Publicação de questionário na internet O uso de variáveis do tipo

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

Exercícios Teóricos Resolvidos

Exercícios Teóricos Resolvidos Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar

Leia mais

Modelo de dados do Data Warehouse

Modelo de dados do Data Warehouse Modelo de dados do Data Warehouse Ricardo Andreatto O modelo de dados tem um papel fundamental para o desenvolvimento interativo do data warehouse. Quando os esforços de desenvolvimentos são baseados em

Leia mais

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens

Leia mais

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

Faculdade Pitágoras 24/10/2011. 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.1 Álgebra Relacional -Conceitos - Seleção - Projeção

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

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

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais

Leia mais

select nome from Médicos where codm in (select codm from Consultas where data = 06/06/13 )

select nome from Médicos where codm in (select codm from Consultas where data = 06/06/13 ) Subconsultas * subconsulta: forma alternativa de expressar consultas envolvendo relacionamentos entre tabelas * cláusulas para tratamento de subconsultas: IN, ANY, ALL, EXISTS 3.1) Cláusula [NOT] IN *

Leia mais

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

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir: Chaves 1 Chaves CONCEITO DE CHAVE: determina o conceito de item de busca, ou seja, um dado que será empregado nas consultas à base de dados. É um conceito lógico da aplicação (chave primária e chave estrangeira).

Leia mais

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

Banco de Dados I. Introdução. Fabricio Breve Banco de Dados I Introdução Fabricio Breve Introdução SGBD (Sistema Gerenciador de Banco de Dados): coleção de dados interrelacionados e um conjunto de programas para acessar esses dados Coleção de dados

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Definida pelo American National Standard Institute (ANSI) em 1986

Definida pelo American National Standard Institute (ANSI) em 1986 2.3. Linguagens Relacionais SQL Structured Query Language Linguagem para o modelo relacional: Definida pelo American National Standard Institute (ANSI) em 1986 Adoptada em 1987 como um standard internacional

Leia mais

Modelos. Comunicação com clientes

Modelos. Comunicação com clientes Material baseado nas notas de aula: Maria Luiza M. Campos IME/2005 Carlos Heuser - livro Projeto de Banco de Dados CasaNova / PUC/RJ Prof. MSc. Edilberto Silva edilms@yahoo.com Sistemas de Informação Brasília/DF

Leia mais

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis 1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que

Leia mais

PROGRAMANDO EM C# ORIENTADO A OBJETOS

PROGRAMANDO EM C# ORIENTADO A OBJETOS PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 2 Domínio e Aplicação Objetos, Atributos e Métodos Classes em C# Criando Objetos em C# Referências em C# Manipulando Atributos Valores Padrão Exercícios

Leia mais

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com.

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com. Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel

Leia mais

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011 Banco de Dados Aula 1 - Prof. Bruno Moreno 16/08/2011 Roteiro Apresentação do professor e disciplina Definição de Banco de Dados Sistema de BD vs Tradicional Principais características de BD Natureza autodescritiva

Leia mais

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

Banco de Dados I 2007. Módulo III: Linguagens de Consulta. (Aula 2) Clodis Boscarioli Banco de Dados I 2007 Módulo III: Linguagens de Consulta (Aula 2) Clodis Boscarioli Agenda: Álgebra Relacional; Operador Divisão; Álgebra Relacional Estendida. Operações Adicionais Divisão Operação adicional,

Leia mais

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados - Banco de Dados Aula 02 Modelagem de Dados Roteiro Definição Evolução Projeto de BD Abstração Esquema e Instância Definição É uma representação, normalmente gráfica, de estruturas de dados reais. Auxilia

Leia mais

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

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA 3 Linguagem SQL Linguagem de manipulação de dados (DML) DISCIPLINA: Banco de

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento Banco de Dados I Fases do Projeto jt de BD Enunciado de requisitos entrevista com o usuário do banco de dados para entender e documentar seus requerimentos de dados. Projeto

Leia mais

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Capítulo 6. Autômatos com Pilha 6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Nos exemplos da seção anterior, vimos que os autômatos com pilha existem para

Leia mais

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele

Leia mais

14/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

14/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Faculdade INED Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan 1 Unidade 2 Introdução a SQL 2 Leitura Obrigatória ELMASRI,

Leia mais

Consultas SQL Parte II

Consultas SQL Parte II CURSO TÉCNICO EM INFORMÁTICA COMPONENTE CURRICULAR: BANCO DE DADOS PROFESSOR (A): Josiane Ferri TURMA: 11/1 - Tarde Consultas SQL Parte II Outras cláusulas que o comando select apresenta são DISTINCT,

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Bem-vindo ao tópico sobre consultas no SAP Business One.

Bem-vindo ao tópico sobre consultas no SAP Business One. Bem-vindo ao tópico sobre consultas no SAP Business One. 1 Neste tópico, você aprenderá a criar consultas SQL utilizando as ferramentas de consulta do SAP Business One Assistente de consultas e Gerador

Leia mais

Plano de Trabalho Docente 2014. Ensino Técnico

Plano de Trabalho Docente 2014. Ensino Técnico Plano de Trabalho Docente 2014 Ensino Técnico Etec Etec: Rodrigues de Abreu Código: 135 Município: Bauru Eixo Tecnológico: Informação e Comunicação Habilitação Profissional: Técnica de nível médio de técnico

Leia mais

MC536 Bancos de Dados: Teoria e Prática

MC536 Bancos de Dados: Teoria e Prática Universidade Estadual de Campinas - UNICAMP Instituto de Computação - IC MC536 Bancos de Dados: Teoria e Prática Aula #3 : MER e MER Estendido Profs. Anderson Rocha e André Santanchè Campinas, 1 de Agosto

Leia mais

Prof. Ronaldo R. Goldschmidt. ronaldo@de9.ime.eb.br rribeiro@univercidade.br geocities.yahoo.com.br/ronaldo_goldschmidt

Prof. Ronaldo R. Goldschmidt. ronaldo@de9.ime.eb.br rribeiro@univercidade.br geocities.yahoo.com.br/ronaldo_goldschmidt Prof. Ronaldo R. Goldschmidt ronaldo@de9.ime.eb.br rribeiro@univercidade.br geocities.yahoo.com.br/ronaldo_goldschmidt Prof. Ronaldo Ribeiro Goldschmidt REVISÃO DE BD RELACIONAIS E SQL! "" #!$ #%! $& #

Leia mais

Técnicas de Caixa Preta de Teste de Software

Técnicas de Caixa Preta de Teste de Software Técnicas de Caixa Preta de Teste de Software Na maioria de projetos de teste, o tempo para a realização dos mesmos sempre é curto e os números de testes a serem realizados nas aplicações são inúmeros.

Leia mais

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

Leia mais

Revisão de Banco de Dados

Revisão de Banco de Dados Revisão de Banco de Dados Fabiano Baldo 1 Sistema de Processamento de Arquivos Antes da concepção dos BDs o registro das informações eram feitos através de arquivos. Desvantagens: Redundância e Inconsistência

Leia mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução à Banco de Dados. Nathalia Sautchuk Patrício Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem

Leia mais

Criação de Consultas e Relatórios no Access CRIAÇÃO DE CONSULTAS E RELATÓRIOS NO ACCESS

Criação de Consultas e Relatórios no Access CRIAÇÃO DE CONSULTAS E RELATÓRIOS NO ACCESS Criação de Consultas e Relatórios no Access CRIAÇÃO DE CONSULTAS E RELATÓRIOS NO ACCESS Sumário Conceitos / Autores chave... 3 1. Introdução... 4 2. Consultas... 5 3. Relatórios... 8 4. Conclusões... 11

Leia mais

07/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

07/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Faculdade IED Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional Prof.: Fernando Hadad Zaidan Unidade Álgebra Relacional 2 Leitura Obrigatória ELMASRI, R.;

Leia mais

Banco de Dados. Prof. Antonio

Banco de Dados. Prof. Antonio Banco de Dados Prof. Antonio SQL - Structured Query Language O que é SQL? A linguagem SQL (Structure query Language - Linguagem de Consulta Estruturada) é a linguagem padrão ANSI (American National Standards

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

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

UNIVERSIDADE FEDERAL FLUMINENSE PÓLO UNIVERSITÁRIO DE RIO DAS OSTRAS FACULDADE FEDERAL DE RIO DAS OSTRAS CURSO DE CIÊNCIA DA COMPUTAÇÃO UNIVERSIDADE FEDERAL FLUMINENSE PÓLO UNIVERSITÁRIO DE RIO DAS OSTRAS FACULDADE FEDERAL DE RIO DAS OSTRAS CURSO DE CIÊNCIA DA COMPUTAÇÃO 2ª. Avaliação de Banco de Dados 1º. Sem de 2008 Prof.: Carlos Bazilio

Leia mais

a 1 x 1 +... + a n x n = b,

a 1 x 1 +... + a n x n = b, Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição

Leia mais

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito

Leia mais

Banco de Dados Lista de Exercícios 01

Banco de Dados Lista de Exercícios 01 Banco de Dados Lista de Exercícios 01 Prof. Anderson Rocha & Prof. André Santanché Campinas, 24 de Setembro de 2012 Nome: RA: 1 Observações Este lista contem 20 exercícios e contempla os seguintes assuntos

Leia mais

Profº. Enrique Pimentel Leite de Oliveira

Profº. Enrique Pimentel Leite de Oliveira Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam

Leia mais

Módulo 4: Gerenciamento de Dados

Módulo 4: Gerenciamento de Dados Módulo 4: Gerenciamento de Dados 1 1. CONCEITOS Os dados são um recurso organizacional decisivo que precisa ser administrado como outros importantes ativos das empresas. A maioria das organizações não

Leia mais

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

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo. Banco de Dados Arquitetura e Terminologia Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Modelo de Dados e Esquemas O modelo de Banco de Dados é como um detalhamento

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.

Leia mais

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3

Leia mais

Pedro F. Carvalho OCP Oracle 2008.2 10g LINGUAGEM SQL. www.pedrofcarvalho.com.br contato@pedrofcarvalho.com.br São José do Rio Preto

Pedro F. Carvalho OCP Oracle 2008.2 10g LINGUAGEM SQL. www.pedrofcarvalho.com.br contato@pedrofcarvalho.com.br São José do Rio Preto Pedro F. Carvalho OCP Oracle 2008.2 10g LINGUAGEM SQL Objetivos Revisando a sintaxe SQL SELECT, UPDATE, INSERT, DELETE Manipulando expressões Funções matemáticas, etc Condições de Pesquisa Funções de Agregação

Leia mais

Modelos de Dados e Arquitetura de um SGBD. Introdução 1º Bimestre Prof. Patrícia Lucas

Modelos de Dados e Arquitetura de um SGBD. Introdução 1º Bimestre Prof. Patrícia Lucas Modelos de Dados e Arquitetura de um SGBD Introdução 1º Bimestre Prof. Patrícia Lucas Abstração Modelo de Dados Conjunto de conceitos que podem ser utilizados para descrever a estrutura lógica e física

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

Tarefa Orientada 15 Manipulação de dados

Tarefa Orientada 15 Manipulação de dados Tarefa Orientada 15 Manipulação de dados Objectivos: Criação de tabelas teste Comando INSERT INTO Inserção de dados Comando INSERT Actualização de dados Comando UPDATE Eliminação de dados Comando DELETE

Leia mais

Structured Query Language (SQL)

Structured Query Language (SQL) SQL Histórico Structured Query Language (SQL) Foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation Language) para suas primeiras tentativas

Leia mais

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... 0) O que veremos na aula de hoje? Um fato interessante Produtos notáveis Equação do 2º grau Como fazer a questão 5 da 3ª

Leia mais

Etapas da Elaboração de um Projeto de Banco de Dados

Etapas da Elaboração de um Projeto de Banco de Dados Etapas da Elaboração de um Projeto de Banco de Dados Apresentar os modelos de dados em rede, hierárquicos, relacionais e orientados a objetos. Demonstrar as etapas de desenvolvimento de um projeto de banco

Leia mais

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro SQL- Strutured Query Language é a linguagem mais usada nas bases dados relacionais. Originalmente desenvolvida pela IBM Actualmente é um standard, o mais recente é o SQL:2003

Leia mais