ago
04
2010

Trabalhando com campo auto incremento no SQL Server

Um campo auto incremento pode ser utilizado como código ou chave primeira de uma tabela. Toda vez que um novo registro é criado, este campo será incrementado automaticamente. Para criar uma tabela de exemplo com um campo de auto incremento, use a seguinte sintaxe:


CREATE TABLE [dbo].[tProfissionais](

[Codigo] [int] IDENTITY(1,1) NOT NULL,

[Nome] [varchar](50),

[Funcao] [varchar](50))

Se a tabela já existir, você pode modificar da seguinte forma:


ALTER TABLE [dbo].[tProfissionais]

ALTER COLUMN [Codigo] int IDENTITY(1,1);

Agora, ao inserir um registro nesta tabela, o campo “Codigo” receberá automaticamente o valor 1:


INSERT INTO [dbo].[tProfissionais] (Nome, Funcao) VALUES ('Mister POG', 'Programador');

Para resetar o campo auto incremento, use o seguinte código (onde o “0” é o valor inicial do campo):


DBCC CHECKIDENT ('tProfissionais', RESEED, 0)

Para pegar o próximo valor do autoincremente, use o código:


SELECT (IDENT_CURRENT('tProfissionais')+1) AS Proximo

Desta forma, você evita eventuais problemas encontrados com a sintaxe “SELECT MAX(Codigo) FROM [dbo].[tProfissionais]” já que ela retornará o último valor da tabela e esta valor pode não ser o mesmo do auto incremento se houve alguma exclusão de registro.

Espero que estas dicas sejam úteis ;-)

Últimos 5 artigos de Fernando Fonte

Fernando Fonte

De Campinas-SP, bacharel em Ciência da Computação. Atua como Analista Programador em uma empresa de tecnologia, desenvolvendo softwares para comunicação e controle dos equipamentos produzidos e de organização dos processos internos. Possui conhecimento em sistemas operacionais Windows, programação Delphi e Visual Basic 6 e Banco de Dados SQL Server. Atualmente estuda Java, .NET, Flex Builder e Android. Tem interesse em Jogos, Celulares, Smartphones, Notebooks e tudo que for relacionado a tecnologia. Fundador deste site, convidou amigos para lhe ajudar com este projeto.

Website - Twitter - Facebook - More Posts

1 Comentário »

RSS feed para os comentários deste artigo.


Deixe uma Resposta

*

Powered by WordPress. Theme: TheBuckmaker. Darlehen, OpenID