Skip to content

Create Default X Default constraint

13/05/2012

Olá amigos(as) 🙂
Hoje vou mostrar duas maneiras de como criar um valor padrão para colunas:

– CREATE DEFAULT (Transact-SQL)
– [ CONSTRAINT constraint_name ] DEFAULT constant_expression

Vamos para o exemplo de criar um default:

CREATE DEFAULT DF_DataCadastro AS GetDate();
GO

CREATE TABLE MyTempTable(Id int, DataCadastro datetime)
GO

EXEC SP_BINDEFAULT 'DF_DataCadastro','MyTempTable.DataCadastro'
-- Messagens: Default bound to column.

INSERT MyTempTable(Id) VALUES(1), (2)

SELECT * FROM MyTempTable

O resultado do SELECT exibe o valor da coluna DataCadastro sendo data/hora da inserção do registro.
Até aqui nada de diferente.

Vamos para o segundo exemplo:

CREATE TABLE MyTempTable(
  Id int, 
  DataCadastro datetime CONSTRAINT DF_MyTempTable_DataCadastro DEFAULT GetDate()
);  
GO

INSERT MyTempTable(Id) VALUES(1), (2)

SELECT * FROM MyTempTable

O que mudou foi a maneira de criarmos o valor padrão para a coluna DataCadastro.

A vantagem de associar um valor padrão para uma coluna é de podemos utilizar o mesmo nome do default criado, para outras tabelas.
Já a restrição “default constraint” deve ter seu nome seguindo as regras para identificadores, ou seja, único para cada coluna.

A “desvantagem” em associar um valor padrão, é que ele será REMOVIDO:
“Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso..”

Fonte: http://msdn.microsoft.com/en-us/library/ms173565.aspx

Espero ter esclarecido algumas dúvidas.
Até o próximo artigo!

Anúncios

From → Transact-SQL

Deixe um comentário

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: