Modelo Relacional
O modelo relacional surgiu como uma tentativa de libertar os utilizadores das especificações rígidas associadas ao formato dos dados como acontecia com o modelo hierárquico e o modelo em rede.
O modelo relacional surgiu em 1970, tendo por base a seguinte publicação que se tornou um clássico de Codd.
Ao contrário dos modelos anteriores (hierárquico e em rede), o modelo relacional não evoluiu a partir das técnicas de processamento de ficheiros.
Uma das principais vantagens do modelo elaborado por Codd foi ter-se baseado num ramo da matemática que é, simultaneamente, simples e poderoso - a teoria dos conjuntos. O modelo desenhado por Codd foi durante alguns anos desenvolvido e implementado apenas em universidades e em laboratórios de pesquisas nesta área.
A estrutura de dados utilizada no modelo relacional é a relação. Esta pode se definida como uma tabela constituída por linhas e colunas, na qual as colunas ou campos representam os atributos e as linhas representam os registos ou as instâncias da relação.
Por definição, uma relação é uma estrutura bidimensional que obedece a um esquema determinado de zero ou mais instâncias. O esquema de uma relação e constituído por um ou mais atributos que traduzem o tipo de dados a armazenar. A cada instância de uma relação chama-se tuplo.
O modelo relacional é constituído por:
1.Relação/ tabela
2.Atributos/ colunas
3.Tuplos/ linhas
Equivalência entre conceitos
Associado ao modelo relacional existem 2 conceitos fundamentais a saber:
- Grau de uma Relação – corresponde ao número de atributos que constituem o esquema de uma relação.
- Cardinalidade de uma relação – corresponde ao número de tuplos (linhas) de uma relação (tabela).
Exemplo
Chaves
No modelo relacional a única forma de relacionar dados que existem numa tabela, com dados que existem noutra tabela, é através de atributos comuns. Assim vão existir atributos especiais (chaves estrangeiras) que servem para fazer ligações a outras tabelas em que esses mesmos atributos identificam, univocamente cada uma das linhas (chaves primarias).
Tipos de chave:
1. Superchave
2. Chave candidata
3. Chave primária
4. Chave estrangeira
Restrições de integridade
As restrições de integridade são um dos objectos principais de um sistema gestor de base de dados. A integridade dos dados é um termo abrangente que inclui, simultaneamente, os conceitos de consistência, precisão e correcção dos dados armazenados numa base de dados. Existem 4 tipos de integridade:
1. Integridade da entidade – cada tabela deverá possuir na sua definição uma chave primária.
2. Integridade do domínio – o valor de um campo deve obedecer ao tipo de dados e às restrições de valores admitidos para essa coluna.
3. Integridade referencial – tem por objectivo manter os dados sincronizados, entre tabelas que estejam relacionadas.
4. Integridade definida pelo utilizador – é obtida pela definição específica de regras particulares do negócio.
Álgebra e cálculo relacional
Codd propôs dois interfaces para o modelo relacional:
1. Álgebra relacional – se considerarmos que uma relação é um conjunto, então todas as operações que se podem realizar sobre conjuntos pode ser aplicadas à relação.
2. Cálculo relacional – o utilizador pode definir o que se pretende através de uma forma declarativa, sendo o cálculo baseado em predicados de 1ª ordem.
Com a utilização deste modelo, aquilo que parecia tão complexo tornou-se mais simples, pois podia-se fazer alterações no esquema de base de dados sem afectar a capacidade do sistema em manipular os dados, pois neste modelo toda a informação e armazenada sob a forma de tabelas bidimensionais e as relações são estabelecidas através de colunas (campos) comuns em tabelas distintas.
Para garantir que o modelo relacional fosse definido de forma igual, Codd definiu um conjunto de 12/13 regras a que um SGBD deve obedecer para que possa ser considerado um modelo relacional.