Campo Autoincremento em tabela já populada Firebird

Firebird

22/07/2014

Olá amigos essa é minha primeira postagem!

Seguinte recentemente migrei um DB para firebird.
O problema que tenho uma tabela que preciso criar um campo autoincremento, mas a mesma já possui registros então criei um novo campo que receberá o código autoincrementado, mas como posso inserir o número nos registros pelo ibexpert.

Valeu, pessoal!
Luis Palladino

Luis Palladino

Curtidas 0

Respostas

Lucas Marciel

Lucas Marciel

22/07/2014

ABRE O IBEXPERT VAI NO GERADOR E ALTERA O VALOR PARA O ULTIMO NUMERO QUE VC JA TEM EM SEU BANCO...QUANDO FOR CRIAR O PROXIMO REGISTRO..ELE IRAR PEGAR O NUMERO QUE VC COLOCOU + 1 E SERÁ O SEU NOVO NÚMERO...
GOSTEI 0
Luis Palladino

Luis Palladino

22/07/2014

Lucas obrigado, mas acho que não me expressei direito.
Então tenho a tabela com mais de 4.000 registros. Criei um novo campo CODIGO só que o mesmo está vazio, o que preciso é popular esse campo com código começando do 0 ate o final dos registros em ordem crescente.
GOSTEI 0
Rafael Mota

Rafael Mota

22/07/2014

É bem simples cara, basta criar uma generator, setar de qual número deseja que ela inicie e executar o seguinte update:

update suatabela set CODIGO =(gen_id(suagenerator,1))


Abraços.
GOSTEI 0
Luis Palladino

Luis Palladino

22/07/2014

Show de Bola Mota, só um detalhe... a numeração começou a partir do ultimo registro ou seja eu tenho 2.229 registros na tabela e o primeiro valor inserido foi 2.230 teria como eu começar isso do 1 por ex.

Valeu mesmo.
GOSTEI 0
Rafael Mota

Rafael Mota

22/07/2014

Show de Bola Mota, só um detalhe... a numeração começou a partir do ultimo registro ou seja eu tenho 2.229 registros na tabela e o primeiro valor inserido foi 2.230 teria como eu começar isso do 1 por ex.

Valeu mesmo.


Você tem que se atentar para o valor atual da generator, acredito que você tenha usado uma generator já existente e ela estava com o valor 2.229. Para começar do 1, você deve setar o valor dessa generator para 0 ou criar uma nova generator.

Update para setar valor da generator:

alter sequence sua_generator restart with 0


Abraços..
GOSTEI 0
Luis Palladino

Luis Palladino

22/07/2014

Foi isso mesmo... resolvido. Muito obrigado!
GOSTEI 0
William

William

22/07/2014

Finalizando tópico!
GOSTEI 0
POSTAR