12 regras de Codd: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Linha 4:
 
== As regras ==
Não copie trabalho da wiki
'''Regra 0:''' O sistema precisa ser qualificado como umdcwrfv3rtv4ggt4yh5w5yw5yhwyhn5''[[Modelo relacional|relacional]]'', como um ''[[banco de dados]]'', e como um ''[[sistema de gerenciamento]]''.
:Para um sistema para se qualificar como um sistema de gerenciamento de banco de dados relacional ([[SGBD]]), este sistema precisa usar suas facilidades de ''relacionamento'' (exclusivamente) para ''gerenciar'' o ''banco de dados''.
 
'''Regra 1:''' A ''regra da informação'':
:Todas as informações no banco de dados necessitam estar representadas de apenas uma forma, nomeados por valores em posições de colunas dentro de registros de tabelas.
 
'''Regra 2:''' A ''regra de acesso garantido'':
:Todos os dados necessitam ser acessíveis. Esta regra é essencialmente uma reafirmação do requisito fundamental para [[Chave primária|chaves primárias]]. Diz que todo valor na base de dados necessita ser logicamente endereçavel por um nome específico do conteúdo [[Tabela (base de dados)|tabela]], o nome do conteúdo da coluna e o valor da chave primária do conteúdo [[Registro (bando de dados)|registro]].
 
'''Regra 3:''' ''Tratamento sistemático de valores nulos:'':
:O SGBD deve permitir que cada campo possa permanecer nulo (ou vazio). Especificamente, ele deve suportar uma representação de "falta de informação e informações inaplicáveis" que é [[sistemática]], diferente de todos os valores regulares (oor exemplo, "diferente de zero ou qualquer outro número", no caso de valores numéricos), e independente de [[tipo de dados]]. É também implícito que tais representações devem ser manipuladas pelo SGBD de maneira sistemática.
 
'''Regra 4:''' ''Catálogo [[on-line]] baseado no modelo relacional'':
:Os [[metadados]] devem ser armazenados e gerenciados como dados comuns, ou seja, em tabelas no interior do [[Banco de Dados]]. Esses dados devem estar disponíveis aos usuários autorizados, utilizando a [[linguagem de consulta]] padrão do [[Banco de Dados]].
 
'''Regra 5:''' ''Sublinguagem Ampla de Dados'':
:O sistema necessita suportar ao menos uma linguagem relacional que
::# Possua uma sintaxe linear;
::# Possa ser utilizada seja interativamente, seja por meio de programas;
::# Suporte operações de [[ Linguagem de definição de dados|definição de dados]] (incluindo definições de [[Visão (banco de dados) | Visualizações]]);
::# Suporte operações de [[ Linguagem de manipulação de dados|manipulação de dados]] (atualização, bem como recuperação), de segurança e [[restrições de integridade]], e [[transação em base de dados | transação]]; operações de gerenciamento (begin, commit e rollback).
 
'''Regra 6:''' Atualização por meio de ''[[Visão (banco de dados) | Visualizações]]'':
:Todas as [[Visão (banco de dados) | Visualizações]] que são teoricamente atualizáveis deve ser atualizáveis pelo sistema.
 
'''Regra 7:''' ''Inserção, Atualização, e exclusão de Alto nível'':
:O sistema necessita fornecer suporte à configuração do nível de operações de ''insert'', ''update'', e ''delete''. Isto significa que os dados podem ser recuperados a partir de um banco de dados relacional em conjuntos de dados construídos a partir de várias linhas e / ou várias tabelas. Esta regra afirma que as operações de insersão, atualização, e exclusão devem ser apoiadas para qualquer conjunto recuperável e não apenas para uma única linha em uma única tabela.
 
'''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 Dados '':
:Aplicativos e recursos ''ad hoc'' não são afetados logicamente quando de alterações de estruturas de tabela que preservem os valores originais da tabela (alteração da ordem ou inserção de colunas). Alterações nas relações e nas [[Visão (banco de dados) | Visualizações]] causam pouco ou nenhum impacto nas aplicações.
 
'''Regra 10:''' ''Independencia de Integridade'':
:Todas as [[restrições de integridade]] necessitam ser especificadas separadamente dos programas de aplicação e armazenadas no [[Linguagem de definição de dados|catálogo]]. É necessário que seja possível mudar estas restrições sem que necessariamente tenha-se de modificar as aplicações.
 
'''Regra 11:''' ''Independência de Distribuição'':
:A Distribuição de partes do [[SGBD]] em várias localidades deve ser transparente para os usuários do mesmo. Aplicações existentes necessitam continuar a operar com sucesso:
::# quando uma versão distribuída do [[SGBD]] é introduzido pela primeira vez, e
::# quando dados distribuídos existentes são redistribuídas em outras localidades físicas.
 
'''Regra 12:''' A ''não-transposição das regras'':
:Se o [[SGBD]] dá suporte a acesso de baixo nível aos dados, não deve haver um modo de negligenciar as regras de integridade do mesmo.
 
== {{Ver também}} ==