Aula 01

50 visualizações

Publicada em

banco de dados

Publicada em: Internet
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
50
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 01

  1. 1. 09/03/2015 1 BANCO DE DADOS Fundamentos de Sistemas de Gerência de Banco de Dados Prof. Felipe Frederico BANCO DE DADOS • Conceito: Coleção de dados logicamente coerente que possui um significado implícito cuja interpretação é dada por uma determinada aplicação. Prof. Felipe Frederico BANCO DE DADOS • Sistema de Gerenciamento de Bando de Dados (SGBD) Um sistema de gerenciamento de banco de dados (SGBD) é um software que possui recursos capazes de manipular as informações do banco de dados e interagir com o usuário. Exemplos de SGBDs são: Oracle, SQL Server, PostgreSQL, MySQL, o próprio Access, entre outros. Prof. Felipe Frederico BANCO DE DADOS • Características desejáveis – Recuperação de dados armazenados de forma eficiente; – Tratamento correto e eficiente de acessos simultâneos aos dados armazenados; – A garantia de satisfação das restrições impostas sobre os dados; – Processamento e execução de comandos da LDD e da LMD do modelo de dados correspondente; – Garantia da recuperação contra falhas; – Suporte a gerência de backups. Prof. Felipe Frederico BANCO DE DADOS • Comandos em banco de dados - SQL SQL é a sigla de “Structured Query Language” que significa, em Português, Linguagem de Consulta Estruturada. É uma linguagem padrão de gerenciamento de dados que interage com os principais bancos de dados baseados no modelo relacional. Prof. Felipe Frederico BANCO DE DADOS • Tipos de Comandos em SQL • LMD (DML) Linguagem de manipulação de dados (DML - Data Manipulation Language) conceituava-se inicialmente por ser um conjunto de subcomandos da linguagem SQL utilizadas para a recuperação, inclusão, remoção e modificação de informações em bancos de dados. Hoje é usada em um sentido genérico para referir-se a qualquer linguagem formal. Ex.: Insert, Update, Delete. Prof. Felipe Frederico
  2. 2. 09/03/2015 2 BANCO DE DADOS • Tipos de Comandos em SQL • LDD (DDL) Linguagem de definição de dados (DDL - Data Definition Language). Seguindo o mesmo conceito da anterior onde inicialmente era remetido à um subconjunto de comandos SQL, mas neste caso, utilizada para definição de estruturas de dados. Hoje também é usada em um sentido genérico para referir-se a qualquer linguagem formal. Ex.: Alter, Drop, Create. Prof. Felipe Frederico BANCO DE DADOS NA PRÁTICA Prof. Felipe Frederico BANCO DE DADOS • Por que utilizar Banco de Dados? – Os objetivos de um sistema de banco de dados são o de isolar o usuário dos detalhes internos do banco de dados (promover a abstração de dados) e promover a independência dos dados em relação às aplicações, ou seja, tornar independente da aplicação, a estratégia de acesso e a forma de armazenamento. Prof. Felipe Frederico BANCO DE DADOS • Por que utilizar Banco de Dados? – Os objetivos de um sistema de banco de dados são o de isolar o usuário dos detalhes internos do banco de dados (promover a abstração de dados) e promover a independência dos dados em relação às aplicações, ou seja, tornar independente da aplicação, a estratégia de acesso e a forma de armazenamento. Prof. Felipe Frederico BANCO DE DADOS • Características desejáveis 1. Controle de Redundância; 2. Compartilhamento de Dados; 3. Controle de Acesso aos Dados; 4. Múltiplas Interfaces; 5. Representação de associações complexas; 6. Garantia de restrições de Integridade; 7. Recuperação de falhas. Prof. Felipe Frederico BANCO DE DADOS • Modelo de Dados – Conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dado, tipos de dados, relacionamentos e restrições. Pode também incluir operações que especificam consultas e atualizações no banco de dados. Prof. Felipe Frederico
  3. 3. 09/03/2015 3 BANCO DE DADOS • Projeto de Banco de Dados – Todo bom sistema de banco de dados deve apresentar um projeto, que visa a organização das informações e utilização de técnicas para que o futuro sistema obtenha boa performance e também facilite infinitamente as manutenções que venham a acontecer. Prof. Felipe Frederico BANCO DE DADOS • Observação: Estas duas etapas se referem a um sistema de banco de dados ainda não implementado, ou seja, que ainda não exista, um novo projeto. Para os casos em que o banco de dados já exista, mas é um sistema legado, por exemplo, ou um sistema muito antigo sem documentação, o processo de projeto de banco de dados se dará através da utilização de uma técnica chamada de Engenharia Reversa. Prof. Felipe Frederico BANCO DE DADOS • Projetos de Banco de Dados: • O projeto de banco de dados se dá em duas fases: – Modelagem conceitual; – Projeto lógico. Prof. Felipe Frederico BANCO DE DADOS • Modelo conceitual – É a descrição do BD de maneira independente ao SGBD, ou seja, define quais os dados que aparecerão no BD, mas sem se importar com a implementação que se dará ao BD. Desta forma, há uma abstração em nível de SGBD. Prof. Felipe Frederico BANCO DE DADOS • Modelo conceitual – Uma das técnicas mais utilizadas dentre os profissionais da área é a abordagem entidade-relacionamento (ER), onde o modelo é representado graficamente através do diagrama entidade- relacionamento (DER). Prof. Felipe Frederico BANCO DE DADOS • Cardinalidade – Definição da quantidade de ocorrências de uma entidade que poderá estar associada a outra entidade. Ex.: - Um vendedor pode vender apenas um tipo de produto? Ou dois? Ou três? - Um produto pode ser vendido por apenas um vendedor, ou por todos? Prof. Felipe Frederico
  4. 4. 09/03/2015 4 BANCO DE DADOS • Cardinalidade – Relacionamento binário Um-para-Um (1:1) Indica que uma ocorrência da entidade A pode se relacionar exclusivamente com uma ocorrência da entidade B e vice versa. Ex.: - Um vendedor ocupa um único escritório e um escritório pode ser ocupado por um único vendedor. Prof. Felipe Frederico BANCO DE DADOS • Cardinalidade – Relacionamento Um-para-Muitos (1:n) – uma ocorrência da entidade A pode se relacionar com várias ocorrências da entidade B, porém o inverso não é permitido. Ex.: - Um vendedor atende muitos clientes. Porém, cada cliente tem um vendedor específico. Prof. Felipe Frederico BANCO DE DADOS • Cardinalidade – Relacionamento Muitos-para-Muitos (n:m) – uma ocorrência da entidade A pode se relacionar com muitas ocorrências da unidade B e vice versa. Ex.: - Um vendedor atende muitos clientes, e um cliente pode ser atendido por diversos vendedores. Prof. Felipe Frederico BANCO DE DADOS • MODELO ER - EXEMPLO Prof. Felipe Frederico BANCO DE DADOS • MODELO LÓGICO – Descreve o BD no nível do SGBD, ou seja, depende do tipo particular de SGBD que será usado. Não podemos confundir com o Software que será usado. O tipo de SGBD que o modelo lógico trata é se o mesmo é relacional, orientado a objetos, hierárquico, etc. Abordaremos o SGBD relacional, por serem os mais difundidos. Nele, os dados são organizados em tabelas. Prof. Felipe Frederico BANCO DE DADOS Prof. Felipe Frederico
  5. 5. 09/03/2015 5 BANCO DE DADOS • MODELO LÓGICO O modelo lógico do BD relacional deve definir quais as tabelas e o nome das colunas que compõem estas tabelas. Para o nosso exemplo, poderíamos definir nosso modelo lógico conforme o seguinte: Corretor(corretor_id, nome, endereco) É importante salientar que os detalhes internos de armazenamento, por exemplo, não são descritos no modelo lógico, pois estas informações fazem parte do modelo físico, que nada mais é que a tradução do modelo lógico para a linguagem do software escolhido para implementar o sistema. Prof. Felipe Frederico

×