As regras de Codd Regra Zero: Todas as regras baseiam-se na noção de que para que um Banco de Dados seja considerado Relacional, ele deve utilizar os recursos relacionais exclusivamente para seu gerenciamento. Regra 1: Informação – Todas as informações de um BDR devem ser representadas logicamente como valores de coluna em linhas dentro das tabelas. Regra 2: Garantia de Acesso – Deve-se garantir que todos os valores de uma tabela possam ser acessados por meio de uma combinação de nome de tabela, valor de chave primária e nome de coluna. Regra 3: Tratamento Sistemático de Nulos – Os nulos devem ser representados e tratados de modo sistemático, independente do tipo de dados. Regra 4: Catálogo On-Line Dinâmico com Base no Modelo Relacional – Os metadados devem ser armazenados e gerenciados como dados comuns, ou seja, em tabelas no interior do BD. Esses dados devem estar disponíveis aos usuários autorizados, utilizando a linguagem relacional padrão do BD. Regra 5: Sublinguagem Ampla de Dados – O BDR pode suportar várias linguagens. No entanto deve suportar uma linguagem declarativa bem definida com suporte para definição de dados, definição de visualização, manipulação de dados (interativa ou por programa), restrições de integridade, autorização e gerenciamento de transações (iniciar, comprometer e desfazer). Regra 6: Atualização de Visualização – Qualquer visualização que teoricamente possa ser atualizada deve ser por meio do sistema. Regra 7: Inserção, atualização e exclusão de alto nível – O BD deve dar suporte à configuração do nível de inserções, atualizações e exclusões. Ou seja, a capacidade de manipular um conjunto de dados através de um comando, deve-se estender às operações de Linguagem de Manipulação de Dados (DML) como insert, update e delete. Regra 8: Independência Física de Dados – Aplicativos e recursos ad hoc não são afetados logicamente quando os métodos de acesso ou as estruturas de armazenamento físico são alterados. Regra 9: Independência Lógica de