Banco de Dados
Professor Delfino
@gdelfs
Assunto: modelagem lógica e álgebra relacional
Banco de Dados
Modelagem Lógica
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Modelo Hierárquico → organização dos dados em estrutura hierárquica de árvore, com dados em registros conectados por links
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Modelo Hierárquico → organização dos dados em estrutura hierárquica de árvore, com dados em registros conectados por links
Modelo de rede → conjuntos e registros, conectados por enlaces de uma rede
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Modelo Hierárquico → organização dos dados em estrutura hierárquica de árvore, com dados em registros conectados por links
Modelo de rede → conjuntos e registros, conectados por enlaces de uma rede Modelo Relacional → tabelas
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Modelo Hierárquico → organização dos dados em estrutura hierárquica de árvore, com dados em registros conectados por links
Modelo de rede → conjuntos e registros, conectados por enlaces de uma rede Modelo Relacional → tabelas
Modelo Estrela → dados visualizados de maneira multidimensional
Banco de Dados
Modelagem Lógica
Modelo Plano → arranjo de elementos de dados armazenados em um arquivo binário ou um arquivo de texto
Modelo Hierárquico → organização dos dados em estrutura hierárquica de árvore, com dados em registros conectados por links
Modelo de rede → conjuntos e registros, conectados por enlaces de uma rede Modelo Relacional → tabelas
Modelo Estrela → dados visualizados de maneira multidimensional
Modelo Orientado a objetos → semelhante ao relacional, mas com objetos. Possui classes e herança
Banco de Dados
Modelo Relacional → tabelas
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Tabela, também chamado de relação Coluna/Atributo
Linha/Tupla, também chamada de instância
Dados possuem tipos, o tipo de dado é chamado também de domínio
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Cada valor em uma tupla é um valor atômico.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Cada valor em uma tupla é um valor atômico.
O valor de uma tupla pode ser NULL.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Cada valor em uma tupla é um valor atômico.
O valor de uma tupla pode ser NULL.
Linhas diferentes entre si.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Cada valor em uma tupla é um valor atômico.
O valor de uma tupla pode ser NULL.
Linhas diferentes entre si.
Os nomes das colunas são únicos.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Uma relação é definida como um conjunto de tuplas.
Cada valor em uma tupla é um valor atômico.
O valor de uma tupla pode ser NULL.
Linhas diferentes entre si.
Os nomes das colunas são únicos.
A ordem das colunas não é irrelevante para o banco de dados. A ordem das colunas é relevante para o banco de dados.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Modelo Relacional utiliza fundamentação teórica de teoria dos conjuntos.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Modelo Relacional utiliza fundamentação teórica de teoria dos conjuntos.
A base das linguagens de consulta aos bancos de dados é feita com a álgebra relacional, até então utilizada em aplicações de matemática pura.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Modelo Relacional utiliza fundamentação teórica de teoria dos conjuntos.
A base das linguagens de consulta aos bancos de dados é feita com a álgebra relacional, até então utilizada em aplicações de matemática pura.
Álgebra Relacional é uma linguagem de consulta formal, uma derivação descendente da lógica de primeira ordem e da álgebra de conjuntos em relação das operações, auxiliando identificar uma tupla por um atributo.
Banco de Dados
Modelo Relacional → Todos os dados devem estar armazenados em tabelas!
Modelo Relacional utiliza fundamentação teórica de teoria dos conjuntos.
A base das linguagens de consulta aos bancos de dados é feita com a álgebra relacional, até então utilizada em aplicações de matemática pura.
Álgebra Relacional é uma linguagem de consulta formal, uma derivação descendente da lógica de primeira ordem e da álgebra de conjuntos em relação das operações, auxiliando identificar uma tupla por um atributo.
É uma coleção de operações de alto nível sobre relações ou conjuntos cujo resultado seja uma nova relação ou um conjunto.
Banco de Dados
Álgebra Relacional
Coleção de operações → Seleção, Projeção, Junção, Produto Cartesiano, União, Intersecção e Diferença
Banco de Dados
Álgebra Relacional
Coleção de operações → Seleção, Projeção, Junção, Produto Cartesiano, União, Intersecção e Diferença
Operações podem ser unárias (tratam de apenas uma tabela) ou binária (trata de duas tabelas)
Banco de Dados
Álgebra Relacional
Coleção de operações → Seleção, Projeção, Junção, Produto Cartesiano, União, Intersecção e Diferença
Operações podem ser unárias (tratam de apenas uma tabela) ou binária (trata de duas tabelas)
Unária → Seleção, Projeção
Binária → Junção, Produto Cartesiano, União, Intersecção e Diferença
Banco de Dados
Álgebra Relacional
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições
Banco de Dados
Álgebra Relacional
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições
Banco de Dados
Álgebra Relacional
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições
Preço menor que $34.00
Banco de Dados
Álgebra Relacional
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições
Preço menor que $34.00
Banco de Dados
Álgebra Relacional
Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Banco de Dados
Álgebra Relacional
Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Banco de Dados
Álgebra Relacional
Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Colunas Sabor e preço
Banco de Dados
Álgebra Relacional
Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Colunas Sabor e preço
Banco de Dados
Álgebra Relacional
Produto Cartesiano (X) → Combina as linhas de uma tabela com as linhas de outra tabela. Resultado contempla todas as combinações das duas tabelas.
Banco de Dados
Álgebra Relacional
Produto Cartesiano (X) → Combina as linhas de uma tabela com as linhas de outra tabela. Resultado contempla todas as combinações das duas tabelas.
Banco de Dados
Álgebra Relacional
Produto Cartesiano (X) → Combina as linhas de uma tabela com as linhas de outra tabela. Resultado contempla todas as combinações das duas tabelas.
Banco de Dados
Álgebra Relacional
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
Banco de Dados
Álgebra Relacional
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
Banco de Dados
Álgebra Relacional
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
Condição: Código_ID = Código_ID
Banco de Dados
Álgebra Relacional
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
Condição:
Código_ID = Código_ID
Banco de Dados
Álgebra Relacional
União (U) → Une duas tabelas compatíveis, colocando as linhas de uma das tabelas ao final das da outra
Banco de Dados
Álgebra Relacional
União (U) → Une duas tabelas compatíveis, colocando as linhas de uma das tabelas ao final das da outra
Banco de Dados
Álgebra Relacional
União (U) → Une duas tabelas compatíveis, colocando as linhas de uma das tabelas ao final das da outra
Banco de Dados
Álgebra Relacional
Intersecção (σ) → Nova tabela que contém os elementos comuns às duas tabelas anteriores. As tabelas precisam ser compatíveis!
Banco de Dados
Álgebra Relacional
Intersecção (σ) → Nova tabela que contém os elementos comuns às duas tabelas anteriores.
Banco de Dados
Álgebra Relacional
Intersecção (σ) → Nova tabela que contém os elementos comuns às duas tabelas anteriores.
Banco de Dados
Álgebra Relacional
Diferença (-) → Resultado é uma tabela que possui tudo que tem na primeira, mas não existe na segunda tabela
Banco de Dados
Álgebra Relacional
Diferença (-) → Resultado é uma tabela que possui tudo que tem na primeira, mas não existe na segunda tabela
Banco de Dados
Álgebra Relacional
Diferença (-) → Resultado é uma tabela que possui tudo que tem na primeira, mas não existe na segunda tabela
Banco de Dados
Seleção (σ) → Projeção (π) →
Produto Cartesiano (X) →
Junção (⋈) → União (U) →
Intersecção (σ) → Diferença (-) →
Banco de Dados
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Produto Cartesiano (X) → Combina as linhas de uma tabela com as linhas de outra tabela. Resultado contempla todas as combinações das duas tabelas.
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
União (U) → Une duas tabelas compatíveis, colocando as linhas de uma das tabelas ao final das da outra Intersecção (σ) → Nova tabela que contém os elementos comuns às duas tabelas anteriores (compatíveis).
Diferença (-) → Resultado é uma tabela que possui tudo que tem na primeira, mas não existe na segunda tabela
Banco de Dados
Seleção (σ) → Filtra as linhas de uma tabela que satisfazem um conjunto de condições, uma série de restrições Projeção (π) → Seleção de colunas especificadas de todas as linhas da relação
Produto Cartesiano (X) → Combina as linhas de uma tabela com as linhas de outra tabela. Resultado contempla todas as combinações das duas tabelas.
Junção (⋈) → Combinação de linhas de uma tabela com as linhas de outra tabela baseado em uma condição.
União (U) → Une duas tabelas compatíveis, colocando as linhas de uma das tabelas ao final das da outra Intersecção (σ) → Nova tabela que contém os elementos comuns às duas tabelas anteriores (compatíveis).
Diferença (-) → Resultado é uma tabela que possui tudo que tem na primeira, mas não existe na segunda tabela
Fim!