você está aqui: Home  → Colunistas  →  Bancos de Dados Livres

Preenchimento automático de campos

Por Luiz Paulo de Oliveira Santos

Data de Publicação: 23 de Novembro de 2006

Ola, hoje estaremos falando de um assunto simples, mas que alguns desenvolvedores deixam de utilizar tal facilidade. A clausula DEFAULT.

Através dessa clausula podemos atribuir previamente um conteúdo à um campo caso o citado campo esteja NULL.

É muito útil para se atribuir valores de preenchimento padrão, como estado para campo UF, pode-se previamente atribuir um valor DEFAULT como sendo o conteúdo que contemple a maioria dos registros.

Essa clausula é atribuída após a definição do campo e segue a seguinte sintaxe:

CREATE TABLE PESSOAS (
NOME VARCHAR(80),
CIDADE VARCHAR(25),
UF CHAR(2) DEFAULT 'DF'
);

No momento da criação da tabela PESSOAS, informamos ao banco que se nenhum valor for atribuído ao campo UF ele automaticamente será preenchido por DF, desta forma não permitindo um campo em estado de NULL.

Obviamente também podemos utilizar o DEFAULT na inclusão de um campo.

Exemplo:

ALTER TABLE SERVICES
ADD SITUACAO SMALLINT
DEFAULT 1 

Em conjunto com o DEFAULT podemos utilizar duas constantes do SQL:

CURRENT_DATE

CURRENT_TIME

Que são respectivamente DATA e HORA do servidor, desta forma ao se utilizar as constantes acima como DEFAULT pode-se automaticamente atribuir a DATA e HORA no momento da INSERÇÃO do registro na tabela. Pode ser muito útil para LOGs por exemplo.

A sintaxe de CURRENT_DATE e de CURRENT_TIME podem sofrer alterações, de acordo com o banco, consulte o manual do seu banco SQL antes de implementar.

E mais, alguns bancos permitem que se utilize uma UDF (User Defined Function) ou função definida pelo usuário para executar um código durante o procedimento de inserção.

Nota importante: Campos onde temos índices que não aceitam repetição de valores (com UNIQUE, por exemplo) não devem receber valores por DEFAULT, pois poderão gerar entradas duplicadas e provocar anomalias imprevisíveis (de erros a não inserção ou alteração de dados), em algumas situações. Logo quanto ao uso do DEFAULT com chaves primárias, prefiro nem tecer comentários à respeito. Portanto cuidado com o uso do DEFAULT.

Sobre o autor

Luiz Paulo de Oliveira Santos teve seu primeiro contato com computadores em 1984, estudou BASIC para equipamentos de 8 bits (ZX-81 e Apple 2), em 1985 com o ambiente de 16 bits, e em 1988 com o ambiente de 32 bits. Em 1993 foi um dos primeiros Brasileiros a ter contato com o VBK que em 1995 se tornou o Delphi. Graduou em Tecnologia Em Processamento de Dados, cursou especialização em Análise de Sistemas e atualmente é graduando em Ciências Jurídicas. Atua como analista de suporte de redes da Universidade Metodista de Piracicaba, é editor da revista DB Freemagazine (uma revista gratuíta focada exclusivamente para bancos de dados Cliente/Servidor) e professor nas Faculdades Integradas Einstein de Limeira no curso de Tecnologia em Sistemas de Informação. Tem experiência nas áreas: Sistemas de Computação, Redes e Teleprocessamento de Dados, Bancos de Dados cliente-servidor e SQL. É autor do livro Firebird - Dicas de Segurança, publicado pela Editora Ciência Moderna.

Recomende este artigo nas redes sociais

 

 

Veja a relação completa dos artigos desta coluna