Sabendo apenas o suficiente sobre bancos de dados relacionais
Construir um sistema em Oracle ou algum outro produto de banco de dados relacional não automaticamente torná-lo um banco de dados relacional. Da mesma forma, você pode criar um perfeitamente bom banco de dados relacional e implementá-lo em algo que não seja um produto de banco de dados relacional. Discutimos duas áreas importantes:
Conteúdo
- O que as pessoas querem dizer com banco de dados relacional?
- Qual é o produto de banco de dados relacional do Oracle?
O que faz um banco de dados “relacional”?
Quando uma base de dados é como descrito relacional, ele foi projetado para estar em conformidade (pelo menos a maioria) a um conjunto de práticas chamado de regras de normalização. Um banco de dados normalizado é aquele que segue as regras de normalização.
Por exemplo, em uma organização, você tem funcionários que trabalham em departamentos específicos. Cada funcionário e departamento tem um número e um nome. Você poderia organizar esta informação como mostra a Tabela 1.
Tabela 1: Exemplo de Informação Employee
EmpNo | Ename | DEPTNO | NOMEDEPTO |
101 | Abigail | 10 | Marketing |
102 | Prumo | 20 | aquisitivo |
103 | Carolina | 10 | Marketing |
104 | Doug | 20 | aquisitivo |
105 | Evelyn | 10 | Marketing |
Se você estruturar seus dados desta forma e fazer algumas alterações nele, você terá problemas. Por exemplo, a exclusão de todos os funcionários no departamento de compras irá eliminar o departamento de si. Se você alterar o nome do departamento de Marketing “Publicidade”, você precisa alterar o registro de cada empregado nesse departamento.
Video: Álgebra Relacional - Exercício 01
Usando os princípios de bases de dados relacionais, os dados dos empregados e Departamento pode ser reestruturado em duas mesas separadas (DEPT e EMP), como mostrado nas Tabelas 2 e 3.
Tabela 2: uma tabela relacional DEPT Amostra
Video: Modelo Relacional - Aula 04 - Bancos de Dados 2016.2
DEPTNO | NOMEDEPTO |
10 | Marketing |
20 | aquisitivo |
Tabela 3: Uma amostra relacional Tabela EMP
EmpNo | ENAME | DEPTNO |
101 | Abigail | 10 |
102 | Prumo | 20 |
103 | Carolina | 10 |
104 | Doug | 20 |
105 | Evelyn | 10 |
Usando essa estrutura, você pode examinar a tabela EMP para descobrir que Doug trabalha no departamento 20. Então você pode verificar a tabela DEPT para descobrir o que o departamento 20 está comprando. Você pode pensar que Tabela 1 parece mais eficiente. No entanto, recuperar as informações que você precisa em uma série de maneiras diferentes é muito mais fácil com a estrutura de dois mesa. Juntando as informações nas duas tabelas para a recuperação mais eficiente é exatamente o problema que bancos de dados relacionais foram projetados para resolver.
Quando as tabelas são implementadas no banco de dados, as informações nas duas tabelas é vinculada usando colunas especiais chamados chaves estrangeiras. No exemplo, a coluna NUM_DEP é a chave estrangeira que liga as tabelas Departamento e Funcionário.
As Tabelas 4 e 5 mostram uma outra estrutura de dados comum, ou seja, uma ordem de compra (tabela PURCH_ORDER) para um item e os detalhes de informação associados a ordem de compra (tabela PURCH_ORDER_DTL) a.
Tabela 4: Um Amostra relacional Tabela PURCH_ORDER
PO_Nbr | Encontro |
450 | 12/10/2006 |
451 | 2006/02/26 |
452 | 2006/03/17 |
453 | 2006/06/05 |
Tabela 5: Uma amostra relacional Tabela PURCH_ORDER_DTL
PO_Nbr | Line_Nbr | Item | Qtde | Preço |
450 | 1 | Martelo | 1 | $ 10,00 |
451 | 1 | Chave de fenda | 1 | $ 8,00 |
451 | 2 | alicate | 2 | $ 6,50 |
451 | 3 | chave | 1 | $ 7,00 |
452 | 1 | chave | 3 | $ 7,00 |
452 | 2 | Martelo | 1 | $ 10,00 |
453 | 1 | alicate | 1 | $ 6,50 |
A ordem de compra pode incluir muitos itens. Tabela 5 mostra que Purchase Order 451 inclui três itens separados. O link (chave estrangeira) entre as mesas é a Purchase Order Number.
terminologia banco de dados básico entendimento
Um banco de dados consiste em tabelas e colunas, como descrito na secção anterior. Há alguns outros termos que você precisa saber para entender como bancos de dados funciona. Um banco de dados é construído em duas etapas. Primeiro você cria um modelo lógico de dados colocar para fora o design do banco de dados e como serão organizados os dados. Então você implementar o banco de dados de acordo com o modelo de dados físico, que estabelece as tabelas e colunas reais. terminologia diferente se aplica aos elementos dos projetos lógicos e físicos. Além disso, os designers de base de dados relacionais usar palavras diferentes a partir de designers (OO) da base de dados orientado para o objecto para descrever os elementos da base de dados. A Tabela 6 mostra as palavras usadas em cada um destes casos.
Tabela 6: Banco de dados Projeto de Terminologia
Lógico / Relacional | Lógico / Orientada a Objetos | Implementação física |
Entidade | Classe | Mesa |
Atributo | Atributo | Coluna |
Instância | Objeto | Linha |
As definições das palavras da Tabela 6 são as seguintes:
Video: Banco de Dados - Capitulo 4b - Álgebra Relacional
- Entidade: Uma entidade corresponde a algo no mundo real que é de interesse e que você deseja armazenar informações sobre. Exemplos de entidades incluem coisas tais como departamentos dentro de uma organização, funcionários ou vendas. Cada departamento ou funcionário específico é considerada uma instância dessa entidade. Por exemplo, na Tabela 3, Doug é um exemplo do empregado entidade. (No mundo OO, Doug seria um objeto na classe Employee.)
- Atributo: Esta palavra é usada em ambos os bancos de dados relacionais e OO para representar informações sobre uma instância de entidade ou um objeto que vai ser rastreado. Um exemplo de um atributo pode ser a data de nascimento ou número de Segurança Social de um empregado.
- Entidades (classes), seus atributos e instâncias (objetos): Eles são implementados no banco de dados como tabelas, colunas e linhas, respectivamente.
Um conceito adicional importante para entender quando se lida com bancos de dados relacionais é a chave primária. UMA chave primária identifica uma instância específica de uma entidade. Não há duas instâncias de uma entidade pode ter a mesma chave primária. Os valores de todas as partes da chave primária não deve ser nulo. Os tipos mais comuns de chaves primárias em bancos de dados relacionais são números de identificação. Por exemplo, na Tabela 3, a EmpID pode ser a chave primária. Às vezes, mais de um atributo (ou conjuntos de atributos) pode ser usado como uma chave primária. Esses atributos são chamados chaves candidatas, um conjunto de que deve ser designada como a chave primária.