02 - Modelo Relacional Flashcards
Quais são os três aspectos presentes em um modelo relacional?
ASPECTOS MEI
Aspecto estrutural: os dados no banco de dados são percebidos pelo usuário como tabelas, e nada além de tabelas.
Aspecto de integridade: essas tabelas satisfazem a certas restrições de integridade ou limitações nos valores, que podem aparecer em cada registro.
Aspecto manipulador: os operadores disponíveis para que o usuário possa manipular essas tabelas – por exemplo, para propósitos de busca de dados – são operadores que derivam tabelas a partir de outras tabelas. Desses operadores, três particularmente importantes são os operadores de restrição, projeção e junção.
O que o dicionário de dados guarda?
Tipos de dados
Estruturas
Restrições de segurança e integridade
Todos os vários esquemas e mapeamentos (externos, conceituais etc.)
Qual é a composição de uma tabela no modelo relacional?
Cada linha de uma tabela é conhecida como uma tupla, ou uma coleção de valores relacionados.
Cada coluna é vista como um atributo, que possui um determinado conjunto de valores possíveis: o domínio.
Um domínio é um conjunto de valores atômicos.
O que uma tupla necessariamente precisa conter?
O nome do atributo
O nome do tipo
Um valor
NOME: CARACTER: VINÍCIUS
Quais são propriedades importantes de uma tupla?
(a) Cada tupla contém exatamente um valor para cada um de seus atributos.
(b) Não existe ordenação da esquerda para a direita (nem de cima para baixo) nos componentes de uma tupla.
(c) Cada subconjunto de uma tupla é uma tupla (e cada subconjunto de um cabeçalho é um cabeçalho). Mais que isso, essa afirmação também é válida para um subconjunto vazio em particular!
Quais são propriedades importantes de uma relação?
Cada tupla contém exatamente um valor para cada atributo. (atomicidade)
Atributos não são ordenados da esquerda para a direita, nem de cima para baixo.
Não existem tuplas duplicadas.
O que é uma view?
Pode ser considerada uma tabela virtual porque só existe durante o período de utilização. Na teoria, ela não deve ser armazenada no banco de dados.
Quais são as funções de uma view?
1) Facilitar a visualização dos dados dispersos em diversas tabelas, tornando-os mais natural ou intuitivo ao entendimento humano.
2) É possível restringir o acesso aos campos e às colunas de uma tabela por meio de uma view.
3) Sumarizar dados de diferentes tabelas, gerando relatórios.
Quais são os tipos de view?
As visões podem ser simples ou complexas. A visualização simples é criada a partir de apenas uma única tabela e não possui nenhuma função. As operações de manipulação podem ser executadas sobre essas visões. Já as visões complexas contêm mais de uma tabela base ou é criada a partir de mais de uma tabela, podem possuir funções agregadas e grupos de dados. Não é possível aplicar operações de manipulação diretamente sobre visões complexas.
O que é um índice?
É um mecanismo utilizado para melhorar a velocidade de acesso aos dados. Ele é composto por uma chave, que é um atributo ou um conjunto de atributos usado para procurar registros em um arquivo. Um índice também possui um ponteiro, que consiste em um identificador para um bloco de disco, além do deslocamento dentro do bloco para encontrar o registro.
O que é uma superchave?
É um conjunto de atributos em uma tabela que não se repete em nenhuma das linhas da tabela.
Se um esquema tiver mais de uma chave, cada uma delas é chamada de chave candidata. Entre as chaves candidatas, uma delas é escolhida para ser a chave da relação e é denominada chave primária. As demais são renegadas e são denominadas chaves secundárias ou alternativas.
O que é uma chave estrangeira?
A chave estrangeira é considerada uma coluna ou uma combinação de colunas em que os valores devem corresponder aos valores de uma chave candidata.
Elas são as chaves usadas no modelo relacional para construir relacionamentos entre as tabelas, incluindo os autorrelacionamentos.
Quais são as 13 regras de Codd?
- Regra fundamental: todas as regras se baseiam na noção de que, para um banco de dados ser qualificado como relacional, ele deve utilizar recursos exclusivamente relacionais para seu gerenciamento.
- Informação: todos os valores são representados em linhas e colunas de uma tabela.
- Acesso garantido: todos os dados precisam ser acessíveis.
- Tratamento de valores nulos: valores nulos devem ser suportados para representar informações inexistentes ou inaplicáveis.
- Catálogo online dinâmico: o dicionário de dados deve ser compreensível e acessível para usuários autorizados.
- Sublinguagem ampla dos dados: um sistema relacional pode suportar várias linguagens e várias formas de recuperação de informações.
- Atualização de visões: todas as views teoricamente atualizáveis devem ser atualizadas pelo sistema.
- Inserção, atualização e exclusão de alto nível: a manipulação de dados deve envolver essas 3 operações.
- Independência física de dados
- Independência lógica de dados
- Independência de integridade: as aplicações não são afetadas quando ocorrem mudanças nas regras de restrições de integridade.
- Independência de distribuição: as aplicações não são logicamente afetadas quando ocorrem mudanças geográficas dos dados.
- Não transposição das regras: o sistema deve ser capaz de impedir que qualquer usuário ou programador passe por
cima de todos os mecanismos de segurança, das regras de integridade do banco de dados e das restrições, utilizando algum recurso ou linguagem de baixo nível que eventualmente possam ser oferecidos pelo próprio sistema.
O que é normalização de dados?
É uma técnica de decomposição utilizada no projeto de banco de dados com objetivo de prover um armazenamento consistente, evitando redundância de dados e anomalias de atualização.
O que é dependência funcional?
A dependência funcional (DF) é uma restrição de duas ou mais colunas de uma tabela.
Considerando X e Y colunas de uma tabela, podemos dizer que X determina Y (X →Y) se existe no máximo um valor de Y para cada valor de X.
Uma dependência funcional pode ser considerada trivial quando X → Y e X contém Y. Por outro lado, se X não contiver Y, a dependência é não trivial.