Bancos de Dados Objeto-relacional e Orientados a Objetos Maria Carolina ([email protected]) Conteúdo na prática Projeto a ser desenvolvido Prática é necessária Metodologia Exemplo Minimundo Modelagem Implementação Tipos Tabelas Apresentação de uma solução Consultas Uso de um caso de estudo Firmar conceitos Tirar dúvidas Realizar implementação ... Qualquer estabelecimento comercial que precise armazenar informações sobre seus funcionários, clientes, produtos... Supermercado simples Loja que vende a varejo ou a atacado ... Um cliente do supermercado é identificado por um código único, nome, endereço, telefone, CPF e data de nascimento. Cada cliente realiza vários pedidos, os quais só podem estar associados a um cliente. Sobre um pedido, deseja-se armazenar um código de controle e a data de realização. A cada pedido, um ou mais produtos podem ser solicitados, mas é necessário saber a quantidade vendida e o valor de venda de cada unidade. Um produto é reconhecido no sistema através de um código único, nome e preço. Cada produto é fornecido por um fornecedor, o qual é representado por um identificador, nome, endereço e CNPJ. Cada pedido é atendido por apenas um funcionário, o qual é representado por um código único, nome, telefone, CPF, data de nascimento, endereço, função e salário, mas o mesmo funcionário é responsável por mais de um atendimento. Não existe a obrigatoriedade de que pessoas com a mesma função recebam o mesmo salário. Os funcionários possuem uma organização interna na empresa: eles estão distribuídos em departamentos, porém um funcionário trabalha em apenas um departamento. Cada departamento possui um nome e um código. Quando houver necessidade de armazenar telefone de alguém envolvido no sistema, deve-se armazenar no máximo 3 telefones (residencial, celular e comercial). Já quando se falar em endereço, lembrar de especificar cada campo: Logradouro CEP Número Bairro Cidade Estado Implementar esse modelo conceitual usando os conceitos Objeto-relacional da Oracle. Tipos Tabela de tipos Ref Nested Varray ... www.cin.ufpe.br/~mcts/ETI/OR-Oracle ArquivoContas ORACLE.txt www.cin.ufpe.br/~mcts/ETI/OR-Oracle ScriptCriacao.SQL Arquivos adicionais ▪ ScriptDROP.SQL ▪ ScriptPovoamento.SQL Selecionar os dados dos clientes que moram em Recife. Selecionar os telefones de todos os funcionários. Selecionar o nome e a quantidade de funcionários de cada departamento. Inserir um novo funcionário e associá-lo ao departamente de vendas. Selecionar quantos pedidos cada cliente já realizou. Selecionar o número de celular de cada funcionário Escreva uma função que receba dois parâmetros: ▪ Uma lista do tipo dos telefones ▪ Índice onde se localiza o telefone que ser que buscar. Utilize essa função para implementar essa consulta Selecionar o valor gasto por cada cliente que já realizou alguma compra. O que sobrar do tempo... =D Bancos de Dados Objeto-relacional e Orientados a Objetos Maria Carolina ([email protected])