MeuMySQL Blog is now at http://blog.mdnsolutions.com/.

Wednesday, September 14, 2011

Bancos Relacionais: 13 regras de Ted Codd


Olá galera, hoje vamos falar sobre uma importante figura na história dos banco de dados relacionais, Ted Codd. Ele realizou avanços na área que norteiam até hoje a estrutura desse modelo. Enjoy!

Os  bancos  de  dados  relacionais  foram  idealizados  por  Edgar  Frank  "Ted"  Codd, um  cientista  de  computação  britânico  que,  enquanto  trabalhava  para  a  IBM,  inventou  o modelo relacional para a gestão de banco de dados, a base teórica para bancos de dados relacionais.

Ele  fez  outras  contribuições  valiosas  para  a  ciência  da  computação,  mas  o modelo  relacional,  uma  teoria  muito  influente  sobre  gestão  de  dados  gerais,  continua sendo seu feito mais citado. Em 1970 ele apareceu com 13 leis (numeradas de 0 a 12) que descreveriam o que é um banco de dados relacional e o que é um Sistema Gerenciador de Banco  de  Dados  Relacionais  faz  e,  várias  leis  de  normalização  que  descrevem  as propriedades  de  dados  relacionais.  Apenas  os  dados  que  haviam  sido  normalizados poderiam ser considerados relacionais.
  1. Regra  Fundamental:  Um  SGBD  relacional  deve  gerenciar  seus  dados usando apenas suas capacidades relacionais. 
  2. Regra  da  informação:  Toda  informação  deve  ser  representada  de  uma única forma, como dados em uma tabela. 
  3. Regra da garantia de acesso: Todo dado (valor atômico) pode ser acessado logicamente  (e  unicamente)  usando  o  nome  da  tabela,  o  valor  da  chave primária da linha e o nome da coluna. 
  4. Tratamento  sistemático  de  valores  nulos:  Os  valores  nulos  (diferente  do zero,  da  string  vazia,  da  string  de  caracteres  em  brancos  e  outros  valores não  nulos)  existem  para  representar  dados  não  existentes  de  forma sistemática e independente do tipo de dado. 
  5. Catálogo dinâmico on-line baseado no modelo  relacional: A descrição do banco de dados é representada no nível lógico como dados comuns (isso é, em  tabelas),  permitindo  que  usuários  autorizados  apliquem  as  mesmas formas de manipular dados aplicados aos dados comuns ao consultá-los. 
  6. Regra  da  sub-linguagem  compreensiva:  Um  sistema  relacional  pode suportar várias linguagens e formas de uso, porém deve possuir ao menos uma  linguagem  com  sintaxe  bem  definida  e  expressa  por  cadeia  de caracteres e com habilidade de apoiar a definição de dados, a definição de visões, a manipulação de dados, as restrições de integridade, a autorização e a fronteira de transações. 
  7. Regra  da  atualização  de  visões:  Toda  visão  que  for  teoricamente atualizável será também atualizável pelo sistema. 
  8. Inserção,  atualização  e  eliminação  de  alto  nível:  A  capacidade  de manipular  a  relação  base  ou  relações  derivadas  como  um  operador  único não  se  aplica  apenas  a  recuperação  de  dados,  mas  também  a  inserção, alteração e eliminação de dados. 
  9. Independência dos dados físicos: Programas de aplicação ou atividades de terminal  permanecem  logicamente  inalteradas  quaisquer  que  sejam  as modificações  na  representação  de  armazenagem  ou  métodos  de  acesso internos. 
  10. Independência  lógica  de  dados:  Programas  de  aplicação  ou  atividades  de terminal  permanecem  logicamente  inalteradas  quaisquer  que  sejam  as mudanças  de  informação  que  permitam  teoricamente  a  não  alteração  das tabelas base. 
  11. Independência  de  integridade:  As  relações  de  integridade  específicas  de um banco de dados relacional devem ser definidas em uma sub-linguagem de dados e armazenadas no catálogo (e não em programas). 
  12. Independência  de  distribuição:  A  linguagem  de  manipulação  de  dados deve  possibilitar  que  as  aplicações  permaneçam  inalteradas  estejam  os dados centralizados ou distribuídos fisicamente. 
  13. Regra da Não-subversão: Se o sistema relacional possui uma linguagem de baixo  nível  (um  registro  por  vez),  não  deve  ser  possível  subverter  ou ignorar as regras de integridade e restrições definidas no alto nível (muitos registros por vez). 

Artigo extraído parcialmente de http://www.scribd.com/doc/50553904/Apostila-de-SQL.

No comments:

Post a Comment