Sequence

SQL Server

14/09/2011

Como faço para criar uma sequence no SQL Server 2008 ?
Algo como o generator do Firebird.



Luiz Bertolazzi

Luiz Bertolazzi

Curtidas 0

Respostas

Marco Pinheiro

Marco Pinheiro

14/09/2011

Luiz,

Se entendi vc quer criar um sequencial no SQL Server.
Você pode criar uma coluna com a função IDENTITY(1,1), ou seja, ele incrementa de 1 em 1 começando pelo registro 1.

Ou usar a função ROW_NUMBER() OVER (ORDER BY campo), isso para uma tabela que já possue registros.

Poste a sua necessidade para melhor exemplificar.

Att.,

Marco.
GOSTEI 0
Luiz Bertolazzi

Luiz Bertolazzi

14/09/2011

Obrigado pela dica, mas não queria usar um campo autoincremento. O que preciso é algo como o generator do Firebird, inclusive o Oracle tem esse recurso do sequence. Preciso criar um contador que não tenha problemas com concorrência, algo assim CREATE SEQUENCE SEQ_NOME_SEQUENCE
GOSTEI 0
Marco Pinheiro

Marco Pinheiro

14/09/2011

Luiz,

Entendi. Neste caso tente usar a função ROW_NUMBER. Ela deve atender a sua demanda. Esta função tb funciona no Oracle com a mesma sintaxe do SQL Server.

Att.,

Marco.
GOSTEI 0
Emerson Nascimento

Emerson Nascimento

14/09/2011

Luiz, o uso de generators (sequence) no Firebird é justamente para criar um campo autoincremento.

Creio que a sugestão do campo IDENTITY é exatamente o que você procura.
GOSTEI 0
Decio Neto

Decio Neto

14/09/2011

GALERA BOM DIA A TODOS.
ESTOU COM UM PROBLEMINHA AQUI E GOSTARIA DE COMPRATILHAR COM VOCES.
TENHU UM SISTEMA EM D7 BANCO SQL2005 CONEXAO BDE, ESTOU TENDO PROBLEMA NO PEDIDO, AS VEZES UM VENDEDO DA INCLUIR E PEGA O MESMO PEDIDO QUE OUTRO AI ELE DA ESC E PERDE O DO OUTRO, ALGUEM TEM ALGUMA DICA DE COMO MUDAR OU COMO UTILIZA PRA FAZER CONTROLE DE CONTADORES.
EU UTILIZO UMA TABELA COMO O NOME DO CAMPO E O VALOR QUANDO DO INCLUIR ELE VAI PEGA O CODIGO E SOMA MAIS UM E GRAVA NA TABELA, POREM USO UMA TABLE PRA ISSO SERA Q UTILIZANDO UMA QUERY MELHORARIA ALGO.

ABRAÇOS VALEW.
GOSTEI 0
POSTAR