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.
- Regra Fundamental: Um SGBD relacional deve gerenciar seus dados usando apenas suas capacidades relacionais.
- Regra da informação: Toda informação deve ser representada de uma única forma, como dados em uma tabela.
- 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.
- 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.
- 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.
- 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.
- Regra da atualização de visões: Toda visão que for teoricamente atualizável será também atualizável pelo sistema.
- 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.
- 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.
- 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.
- 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).
- 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.
- 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