Revisão de Banco de Dados

Slides:



Advertisements
Apresentações semelhantes
Um pouco mais de cardinalidade e Relacionamentos
Advertisements

Laboratório WEB Professora: Viviane de Oliveira Souza Gerardi.
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
BANCO DE DADOS Transparências baseadas no capítulo 1 do livro de KORTH e SILBERCHATZ e 1 e 2 do livro de ELMASRI e NAVATHE. Juliana Amaral e Rodrigo Baroni.
O Modelo E-R Definição: Características
Funcionalidades de um SGBD
SISTEMAS DE INFORMAÇÃO
Maurício Edgar Stivanello
Motor de Armazenamento
SGBD.
Transações Atômicas Distribuídas
Transações Atômicas Distribuídas
Sistema Gerenciador de Banco de Dados SGBD
Introdução a Bancos de Dados
Professora: Aline Vasconcelos
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
Sistemas de Informação
Sistema de Banco de Dados
Professor Victor Sotero
Gerenciamento dos Recursos de Dados
Administração de Sistemas de Informação Banco de Dados
SQL Server 2012 Introdução a Modelagem de Dados
Tecnologias de Linguagens para Banco de Dados
Banco de Dados Aplicado ao Desenvolvimento de Software
Banco de Dados II Prof. Antônio Cordeiro.
Sistemas Distribuídos
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
Banco de Dados e Usuários do Banco de Dados (capítulo 1)
ACESSO A BASE DE DADOS.
Profª Daniela TLBD.
Projeto de Banco de Dados
Sistemas de Informações Geográficas SIGs.
Introdução a Banco de dados
Exercícios SGBD - CESPE
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
Controle de concorrência
Curso Técnico em Mineração
Contexto da disciplina
SGBD Distribuído Lílian Simão Oliveira.
Banco de Dados Aplicado ao Desenvolvimento de Software
Administração e Gerenciamento
BANCO DE DADOS Aula 3 Josino Rodrigues Neto© Fundamentos em Banco de Dados.
Objetivos do Capítulo Explicar a importância da implementação de processos e tecnologias de gerenciamento de dados numa organização. Explicar as vantagens.
Cristina Paludo Santos URI – Campus de Santo Ângelo
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
SISTEMAS DISTRIBUÍDOS Transações Atômicas
Introdução a Banco de Dados Aula 04
Bancos de Dados Estrutura e Funcionamento de um SGBD
Banco de dados 1 Modelagem de Dados Utilizando MER
Banco de Dados Representa o arquivo físico de dados, armazenado em dispositivos periféricos, para consulta e atualização pelo usuário. Possui uma série.
Bancos de Dados Fundamentos Prof. Marcos R. Cardoso.
Projeto de Banco de Dados
UCSal – Bacharelado em Informática
Banco de Dados I Aula 4 - Projeto Conceitual de Banco de Dados
Banco de Dados I Aula 3 - Projeto Conceitual de Banco de Dados
B ANCO DE DADOS Introdução ABTécnico. C ONCEITO É uma coleção de dados interrelacionados, representando informações sobre um domínio específico. Exemplos:
Plano de Ensino Conceitos e Características Tipos de Banco de Dados
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
Modelos de dados.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
Modelagem de Dados Aula 3.
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Revisão de Banco de Dados Adilson Silva adilson.silva@fsm.com.br

Introdução Sistemas de Gerenciamento de Banco de Dados – Software com recursos específicos para facilitar a manipulação das informações dos bancos de dados e o desenvolvimento de programas aplicativos.

Características Esquematização – Deverá fornecer mecanismos que possibilitem a compreensão do relacionamento existentes entre as tabelas e de sua eventual manutenção. Controle de Integridade – Deverá impedir que aplicações ou acessos pelas interfaces possam comprometer a integridade dos dados. Backups – Deverá apresentar facilidade para criar e recuperar cópias dos dados.

Características Controle de Redundâncias – Diminuir a redundância de dados gerenciando processo de armazenamento. Compartilhamento dos Dados – Deve incluir software de controle de concorrência ao acesso dos dados, garantindo em qualquer tipo de situação a escrita/leitura de dados sem erros. Controle de Acesso – Deve dispor de recursos que possibilitem selecionar a autoridade de cada usuário. Interfaceamento – Deverá disponibilizar formas de acesso gráfico.

processador de consultas gerenciador de armazenamento Arquitetura de um SGBD Modificação do esquema Consulta Modificação dos dados processador de consultas gerenciador de transações gerenciador de armazenamento Dados e Metadados

Processador de consultas É responsável por transformar uma consulta ou modificação solicitados pelo usuário em uma sequência de operações a serem executadas sobre os dados de uma base de dados. O processador de consultas é responsável por:   executar consultas; modificar os dados da base de dados (inserir, remover, modificar) ou metadados (num SGBD relacional inclui nome das relações, nomes dos atributos, tipos de atributos); fazer um planejamento (query plan) para obter a melhor maneira de executar uma consulta (ex: usar índice, reordenar as operações, etc);

Gerenciador de Transações   Consultas e outras ações são agrupadas em transações, que são unidades que devem ser executadas atomicamente e de forma isolada. A execução de uma transação deve ser durável, ou seja o efeito de uma transação que foi completada deve ser preservada mesmo após uma falha do sistema.

Gerenciador de Transações   Consultas e outras ações são agrupadas em transações, que são unidades que devem ser executadas atomicamente e de forma isolada. A execução de uma transação deve ser durável, ou seja o efeito de uma transação que foi completada deve ser preservada mesmo após uma falha do sistema. uma transação é uma coleção de operações que desempenha uma função lógica única dentro de uma aplicação do sistema de banco de dados

atomicidade: toda a transação é executada ou nada é feito; Gerenciador de Transações – Requisitos para a execução de uma trqansação. atomicidade: toda a transação é executada ou nada é feito; consistência: após uma transação ter sido completada a base de dados satisfaz as condições de consistencias previamente assumidas; isolamento: se duas transações estão sendo executadas simultâneamente seus efeitos devem ser isolados uma da outra;(locking – controle de concorrência)

Gerenciador de Transações – Requisitos para a execução de uma trqansação. durabilidade: uma vez que o sistema tenha informado que uma transação ocorreu com sucesso, seu efeito não deve ser perdido em caso de falha;(logging – recuperação de falhas) consiteência – uma transação, uma vez executada, deve garantir a consistência do banco de dados ( ex: atributo a tem valor sempre menor que atributo B).

gerenciar os recursos de disco e de memória. Gerenciador de Armazenamento gerenciar os acessos feitos à base de dados de acordo com as solicitações feitas pelos níveis mais altos do SGBD; gerenciar os recursos de disco e de memória.   Estas funções poderiam ser executadas pelos sistemas operacionais convencionais. No entanto, seria muito difícil garantir os requisitos fundamentais de uma transação além da manutenção de redundância dos dados.

Gerenciador de Armazenamento motor de execução (execution engine) M E Ó R I A gerenciador de buffer pool gerenciador de espaço em disco Disco

Gerenciador de armazenamento (Cont.) Gerenciador de espaço em disco - gerenciar os espaços livres e ocupados na área reservada para a base de dados; suportar o conceito de páginas como unidade de dados; transferir páginas da (para) a memória.    Gerenciador de Buffer Pool -  gerenciar a memória principal alocada para o SGBD; alocar e desalocar área de memória para suportar os dados as serem processados.  

Gerenciador de armazenamento (Cont.) Motor de Execução - executa cada uma das etapas.do plano de consulta definido pelo processador de consultas. Interage com a maioria dos componentes do SGBD, seja diretamente ou através dos buffers. Suas funções incluem:   liberar e requisitar espaço livre em disco ; manter informações sobre as páginas alocadas para cada tabela; organizar os registros dentro de uma página; ser capaz de identificar a página no disco que contém o registro sendo solicitado; suportar estruturas de dados auxiliares para garantir acesso mais rápido à página que contém a informação solicitada; gerenciar o catálogo do sistema, que são estruturas de dados que mantêm informações sobre todas as relações, índices e visões de uma base de dados.

Gerenciador de armazenamento (Cont.) Motor de Execução - executa cada uma das etapas.do plano de consulta definido pelo processador de consultas. Interage com a maioria dos componentes do SGBD, seja diretamente ou através dos buffers. Suas funções incluem:   liberar e requisitar espaço livre em disco ; manter informações sobre as páginas alocadas para cada tabela; organizar os registros dentro de uma página; ser capaz de identificar a página no disco que contém o registro sendo solicitado; suportar estruturas de dados auxiliares para garantir acesso mais rápido à página que contém a informação solicitada; gerenciar o catálogo do sistema, que são estruturas de dados que mantêm informações sobre todas as relações, índices e visões de uma base de dados.

Controle de concorrência Locking Um gerente centralizado ou distribuído registra todos os locks e rejeita pedidos de lock em objetos já alocados a outros processos lock para escrita deve ser exclusivo, mas lock para leitura pode ser compartilhado Quanto menor a granularidade do lock maior a chance de paralelismo, mas também maior é a chance de deadlock Lock em duas fases: growing: todos os locks são adquiridos shrinking: todos os locks são liberados Strict two-phase locking: a fase shrinking ocorre “instantaneamente” (previne cascade aborts)

Controle de concorrência Controle otimista Os objetos são modificados sem preocupação com concorrência até o fim da transação Quando chegar o momento de commit, a transação verifica se outra transação modificou os mesmos objetos que ela tenha modificado Se não há conflito, então o commit é feito (repasse de objetos do espaço de trabalho privado), senão é feito um abort

Controle de concorrência Timestamps Cada transação recebe um timestamp único em seu início Cada objeto no sistema tem um read timestamp e um write timestamp, dizendo que transação fez a operação Se transações são “curtas” e “espaçadas” no tempo, normalmente, quando uma transação fizer acesso a um objeto, os timestamps do objeto serão mais velhos que o timestamp da transação. Caso contrário a transação está “atrasada” e deve ser abortada.

Banco Centralizado X Banco Distribuído Os Bancos de dados centralizados: Características Dados integrados (mesmo local); Redução de dados duplicados (reduz espaços dos arquivos); Facilita a implementação do tratamento de concorrência entre clientes, Não existe inconsistência entre cópias (só 1 cópia) Redundância é indesejável; DBA garante a segurança de todo o sistema; Responsabilidade centralizada

Banco Centralizado X Banco Distribuído Desvantagens (BD centralizado) A centralização dos dados vai de encontro ao objetivo de tornar os dados mais facilmente disponíveis ao usuário final em aplicações geograficamente dispersas;  Vulnerabilidade maior a falhas; Às vezes não permitem um crescimento gradativo da capacidade computacional instalada de forma simples e adequada.

É encontrado em um só nó da rede. Banco Centralizado X Banco Distribuído BD CENTRALIZADO O Banco de Dados é controlado pelo gerenciador, o SGBD, onde as aplicações são construídas, para se ter acesso à manipulação dos dados.  É composto por apenas um tipo de BD.  É encontrado em um só nó da rede.

Os bancos de dados distribuídos: Características Banco Centralizado X Banco Distribuído Os bancos de dados distribuídos: Características Compartilhamento de Dados e controle distribuído Autonomia; - Crescimento incremental; Disponibilidade; - Consultas em paralelo; Desvantagens: Custo de desenvolvimento do software; Grande potencial para bugs; Aumento do overhead de processamento:Devido à troca de mensagens e à computação adicional para obter a coordenação entre os nós.

Pode ser composto por mais de um tipo de BD. Banco Centralizado X Banco Distribuído BD DISTRIUÍDO O sistema de software,o SGBDD, possibilita a gerência da base de dados distribuída e torna a distribuição invisível para o usuário.  Pode ser composto por mais de um tipo de BD. É encontrado em mais de um nó da rede.

Acessos não autorizados; Destruição ou alteração intencional; Segurança de Dados Os dados armazenados em Bancos de Dados precisam ser protegidos contra: Acessos não autorizados; Destruição ou alteração intencional; Introdução Acidental de Inconsistências;

Segurança de Dados Existem alguns aspectos a serem considerados sobre segurança, e que são intimamente relacionadas com as decisões a serem tomadas pelo DBA. Entre elas: Aspectos Legais e Éticos. Por exemplo: Num Banco de Dados de um Banco, será que a pessoa que faz a solicitação referente ao crédito de um cliente, tem direito à informação? Controles Físicos. Por exemplo: A sala dos servidores deve ficar trancada ou protegida fisicamente de alguma maneira? Questões Políticas: Como decidir quem tem acesso a o que dentro do banco.

Segurança de Dados Problemas Operacionais: Na adoção de um sistema de senhas, como as senhas são mantidas? Controle de Hardware: Uso de chaves de proteção? Segurança do Sistema Operacional: Qual a política de armazenamento e estrutura de arquivos do sistema?

O mal uso do banco de dados pode ser considerado: Segurança de Dados O mal uso do banco de dados pode ser considerado: Intencional; Acidental;

A perda acidental pode resultar de: Segurança de Dados A perda acidental pode resultar de: Quebras durante o processo de transações; Anomalias causadas por acesso concorrente ao BD; Problemas de estrutura física (incêndio, inundação ou problema elétrico na estrutura física onde está o servidor);

Segurança de Dados É mais fácil proteger o sistema contra perdas acidentais do que contra acessos maldosos ao Banco de dados. Entre as formas de acesso maldoso estão: Leitura não autorizada de dados (roubo de informações); Modificação não autorizada de dados; Destruição não autorizada de dados; Inserção não autorizada de dados.

Dois termos são comumente utilizados com sentidos diferentes: Segurança de Dados Dois termos são comumente utilizados com sentidos diferentes: Segurança de Banco de Dados: Refere-se à proteção contra acessos maldosos; Integridade de Banco de Dados: Refere-se à perda acidental de consistência;

Segurança de Dados Com a finalidade de proteger o Banco de Dados, medidas de segurança devem ser tomadas em vários níveis: Físico: O sistema de Computadores deve ser fisicamente seguro (o uso de backups será considerado mais à frente); Humano: Os usuários devem ser cuidadosamente autorizados (o uso de autorizações de acesso será considerado mais a frente); Sistema Operacional: Uma falha no SO, pode servir de meio de acesso não autorizado ao banco;

Backup Cópia de dados do banco de dados, inclusive dados de controle, guardados em um local seguro; Apesar de os SGDBs darem suporte a Backup, as estratégias de Backup são definidas pelo DBA; Pode ser de dois tipos: Físico; Lógico;

Recuperação e Reposição dos dados que foram salvos pelo Backup; Recovery Recuperação e Reposição dos dados que foram salvos pelo Backup; Garantia de que o sistema voltará ao estado anterior à falha; É função do DBA utilizar um gerenciamento de backup-recovery para cada tipo de erro. Por exemplo, um DBA não comandará um recovery de todos os dados do banco, quando um problema ocorreu apenas em um arquivo de controle.

Autorizações de acesso Concessão de diferentes tipos de autorização permite ao administrador do banco de dados regular a quais partes do banco de dados, diversos usuários podem fazer acesso;

Autorizações de acesso Um usuário pode ter diferentes formas de autorizações sobre um BD; Leitura: permite leitura, mas não modificação dos dados; Inserção: permite inserção de novos dados, mas não modificação dos existentes; Atualização: Permite atualização de dados, mas não remoção; Eliminação: Permite a eliminação de dados;

Pode-se atribuir a um usuário todas ou nenhuma dessas autorizações; Autorizações de acesso Pode-se atribuir a um usuário todas ou nenhuma dessas autorizações; Existem outras autorizações que permitem alteração da estrutura das relações, e que são fornecidas e gerenciadas pelo DBA: Índice: Permite criação ou remoção de índices; Recursos: Permite a criação de novas relações, gatilhos, procedures; Alteração: Permite a modificação de atributos de uma relação; Remoção: Permite remoção de relações;

Modelagem Atividade de modelagem de dados em diversos níveis de abstração • Modelagem conceitual (projeto conceitual) – abstração de mais alto nível • objetivo: representação dos requisitos de dados do domínio – independente de modelo de BD • Modelagem lógica (projeto lógico) – representação da modelagem conceitual em um modelo de BD – ênfase na eficiência de armazenamento • evitar: muitas tabelas (e junções); tabelas sub-utilizadas, ...

Modelagem • Modelagem física (implementação) – esquema SQL para a modelagem lógica • dependente de SGBD – ênfase na eficiência de acesso • implementação de consultas, índices, ...

– independente de detalhes de implementação em um SGBD Projeto de Banco de Dados Modelagem Conceitual • Vantagens – independente de detalhes de implementação em um SGBD • facilita a compreensão da semântica dos dados de um domínio • melhor compreendido por usuários leigos – pode ser mapeado para qualquer modelo lógico de BD – facilita a manutenção do modelo lógico e a migração para outro modelo lógico • processo de engenharia reversa

Conceitos do Modelo de Entidade e Relacionamento ENTIDADE – É uma representação abstrata de um objeto do mundo real. Observações: Nome da entidade deve ser inscrito no retângulo Nome da entidade deve ser um substantivo no singular Se Nome composto separar por Hífen Usar terminologia do usuário Funcionário

Conceitos do Modelo de Entidade e Relacionamento ATRIBUTO – São Propriedades ou características associadas a cada entidade. Composição: NOME DO ATRIBUTO; TIPO (Numérico, caracter , data, datetime); TAMANHO; DESCRIÇÃO CHAVE-PRIMÁRIA – É um Atributo ou grupo de atributos que identificam as linhas (PK) geralmente assumem um valor único. Não pode ter valor nulo Tem como função de garantir a unicidade das linhas Também chamado de Atributo determinante

Conceitos do Modelo de Entidade e Relacionamento CHAVE-ESTRANGEIRA – Atributo ou grupo de atributos que fazem referência a atributo ou grupo de atributo de uma outra tabela. São utilizados para criar ligações entre as tabelas.

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento Relacionamento – abstração de uma associação entre (ocorrências de) entidades – simbologia: losango nomeado • denota um conjunto de ocorrências de relacionamentos Lotação Empregados Departamentos

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento A definição de um relacionamento envolve – cardinalidade máxima • quantidade máxima de ocorrências de entidades que podem estar associadas a uma ocorrência de outra entidade (1 ou N) Lotação N 1 Empregados Departamentos “um empregado está lotado no máximo em 1 departamento. Um departamento tem até N empregados lotados nele.”

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento Exemplos de Cardinalidade Máxima Gerência 1 1 Empregados Departamentos Participa N N Empregados Projetos coordena 1 2 Empregados Projetos

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento A definição de um relacionamento envolve – cardinalidade mínima • indica se a participação das ocorrências de entidades no relacionamento é obrigatória ou opcional Lotação (0,N) (1,1) Empregados Departamentos “um empregado obrigatoriamente está lotado no máximo em 1 departamento. Um departamento pode ter até N empregados lotados nele.”

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento Exemplos de Cardinalidade Máxima e mínima Gerência (1,0) (1,0) Empregados Departamentos Participa (0,N) (0,N) Empregados Projetos coordena (1,1) (1,2) Empregados Projetos

Conceitos do Modelo de Entidade e Relacionamento Projeto de Banco de Dados Conceitos do Modelo de Entidade e Relacionamento Auto-Relacionamento – representa uma associação entre ocorrências de uma mesma entidade – exige a identificação de papéis Supervisionado (0, N) Supervisão Empregados (0,1) Supervisor “um empregado pode ser supervisionado por no máximo 1 empregado. Um empregado pode supervisionar no máximo N empregados.”

Conceitos do Modelo de Entidade e Relacionamento Relacionamento “N”-ário – abstração de uma associação entre “N” (ocorrências de) entidades – exemplo: relacionamento ternário (0,1) (0,n) Distribuição Cidade Distribuidores (0,n) Produtos Exemplo de determinação de cardinalidade: “um produto em uma cidade pode ser entregue por no máximo 1 distribuidor.”

Conceitos do Modelo de Entidade e Relacionamento Classificações de Atributos – obrigatórios X opcionais – monovalorados X multivalorados – simples X compostos – Identificadores CPF Nome Matrícula (0,N) (0,N) Lotação Empregados Projetos Endereço Telefones Rua Cidade Número

Conceitos do Modelo de Entidade e Relacionamento Identificação de Relacionamentos – atributos identificadores adicionais podem ser necessários para definir a identificação de um relacionamento Restrições do Domínio • O modelo ER não é capaz de expressar todas as RIs de um domínio de aplicação – uma documentação em anexo pode ser necessária

Modelo Conceitual Modelo Lógico 1:1 1:1 Tem Produto Estoque Produtos Cod_Prod Nom_Prod Estoque_Prod

Modelo Conceitual Modelo Lógico 1:1 Tem 0:N Departamento Funcionário Departamento Funcionário Cod_Dep (CP) Nom_Dep Sigla_Dep Matricula (CP) Nome Cod_dep (CE)

Modelo Conceitual Modelo Lógico Tem 1:1 Dependente Funcionário Dependente Funcionário Cod_Depe (CP) Nom_Dep Matricula (CE) Matricula (CP) Nome

Modelo Conceitual Modelo Lógico Cursa 0:N Disciplina Aluno Disciplina Aluno Cod_Disc Nom_Disc Carg_Hor_Dis Cod_Disc (CP/CE) Matricula (CP/CE) Matricula (CP) Nome

Modelo Conceitual Modelo Lógico 1:1 Supervisiona Funcionário 0:N Funcionário Matricula (CP) Nome Matricula2(CE)

Modelo Conceitual Modelo Lógico Pre_Requisito Disciplina 0:N Disciplina Pre_requisito Cod_disc (CP) Nome_disc Carg_Hor_Disc Cod_disc_Pre(CE) Cod_Dis_Pos (CE)

Banco de Dados Objeto-Relacional SGBDs Objeto-Relacional combinam os benefícios do modelo Relacional com a capacidade de modelagem do modelo OO Fornecem suporte para consultas complexas sobre dados complexos Atendem aos requisitos das novas aplicações e da nova geração de aplicações de negócios

Banco de Dados Objeto-Relacional Modelos e Linguagens O modelo de dados OR é uma extensão do modelo Relacional As extensões incluem mecanismos para permitir aos usuários estender o banco de dados com tipos e funções específicas da aplicação A linguagem de consulta OR é uma extensão da linguagem SQL para suportar o modelo de objetos As extensões incluem consultas envolvendo objetos, atributos multivalorados, TADs, métodos e funções como predicados de busca em uma consulta

Modelo de Dados Objeto-Relacional Permite especificar e utilizar tipos abstratos de dados(TADs) da mesma forma que os tipos de dados pré-definidos TADs são tipos de dados definidos pelo usuário que encapsulam comportamento e estrutura interna (atributos) A tabela convencional é estendida para permitir a referência de objetos (referência de tipos), TADs e valores alfanuméricos como domínio de colunas

Modelo de Dados Objeto-Relacional Utiliza referências para representar conexões inter-objetos tornando as consultas baseadas em caminhos de referência mais compactas do que as consultas feitas com junção Herança é implementada organizando todos os tipos em hierarquias Utiliza os construtores set, list, multiset ou array para organizar coleções de objetos

Benefícios do Modelo de Dados Objeto-Relacional Nova Funcionalidade Aumenta indefinidamente o conjunto de tipos e funções fornecidas pelo SGBD Desenvolvimento de aplicações simplificado Reuso de código Consistência Permite a definição de padrões, código reusável por todas as aplicações

Linguagem de Consultas para Bancos de Dados Objeto-Relacional O resultado de uma consulta ainda consiste de tabelas Um SGBD Objeto-Relacional ainda é relacional pois suporta dados armazenados em tabelas formadas por linhas e colunas A linguagem de consultas para BDOR é uma extensão da linguagem SQL, utilizada para definição e manipulação de dados e consultas

Adilson Silva adilson.silva@fsm.com.br Projeto de Banco de Dados Dúvidas!? Adilson Silva adilson.silva@fsm.com.br