Uma definição simples de domínio de banco de dados é o tipo de dados usado por uma coluna em um banco de dados. Esse tipo de dados pode ser um tipo interno (como um inteiro ou uma string) ou um tipo personalizado que define restrições nos dados.
Entrada de dados e domínios
Quando você insere dados em um formulário on-line de qualquer tipo, seja seu nome e e-mail ou uma solicitação de emprego, um banco de dados armazena sua entrada nos bastidores. Esse banco de dados avalia suas entradas com base em um conjunto de critérios.
Por exemplo, se você inserir um CEP, o banco de dados espera encontrar cinco números (ou cinco números seguidos por um hífen e quatro números para um CEP completo dos EUA). Se você digitar seu nome em um campo de CEP, o banco de dados apresentará um erro.
Isso porque o banco de dados testa sua entrada em relação ao domínio definido para o campo de código postal. Um domínio é basicamente um tipo de dados que pode incluir restrições opcionais.
Todo tipo de banco de dados fornece uma maneira de definir um conjunto de restrições e regras que governam os dados permitidos, mesmo que não os chame de domínio. Consulte a documentação do seu banco de dados para obter detalhes.
Compreendendo um Domínio de Banco de Dados
Para entender um domínio de banco de dados, vamos considerar alguns outros aspectos de um banco de dados:
- Um esquema de banco de dados define um conjunto de atributos, também chamados de colunas ou campos. Uma tabela chamada "Informações de contato" pode incluir atributos para FirstName, LastName, JobTitle, StreetAddress, City, State, ZipCode, PhoneNumber e Email.
- Cada atributo incorpora um domínio que define os valores permitidos, incluindo potencialmente seu tipo de dados, comprimento, valores e outros detalhes.
Por exemplo, o domínio de um atributo ZipCode pode especificar um tipo de dados numérico, como um inteiro, geralmente chamado de INT ou INTEGER, dependendo do banco de dados. Ou, um designer de banco de dados pode optar por defini-lo como um caractere, geralmente chamado de CHAR. O atributo pode ser definido para exigir um comprimento específico ou se um valor vazio ou desconhecido é permitido.
Quando você reúne todos os elementos que definem um domínio, você acaba com um tipo de dados personalizado, também chamado de "tipo de dados definido pelo usuário" ou UDT.
O que é integridade de domínio?
Os valores permitidos de um atributo estabelecem a integridade do domínio, o que garante que todos os dados em um campo contenham valores válidos.
A integridade do domínio é definida por:
- O tipo de dados, como inteiro, caractere ou decimal.
- O comprimento permitido dos dados.
- O intervalo, definindo os limites superior e inferior.
- Quaisquer restrições ou limitações nos valores permitidos. Por exemplo, um campo de CEP dos EUA pode aplicar um CEP+4 completo ou um código completo de nove dígitos.
- O tipo de suporte NULL (se um atributo pode ter um valor desconhecido ou NULL).
- O valor padrão, se houver.
- O pintor de formato de data, se aplicável (por exemplo, dd/mm/aa ou mm/dd/aaaa).
Criando um Domínio
Para bancos de dados que usam Structured Query Language ou um tipo de SQL, use o comando CREATE DOMAIN SQL.
Por exemplo, a instrução de execução cria um atributo ZipCode do tipo de dados CHAR com cinco caracteres. Um valor NULL ou desconhecido não é permitido. O intervalo dos dados deve estar entre 00000 e 99999. Isso cria um atributo ZipCode do tipo de dados CHAR com cinco caracteres. Um valor NULL ou desconhecido não é permitido.
CREATE DOMAIN ZipCode CHAR(5) NOT NULL CHECK (VALUE >='00000' E VALUE <='99999')
Essas restrições de banco de dados enviam um erro para um aplicativo que serve como front-end para seu banco de dados quando a restrição é violada, então programe uma sub-rotina de captura de erro em seu programa para verificar a integridade antes que o programa pense corretamente informações adicionadas ao banco de dados.