[firebase-br] Preencher um campo autoincremento após produção
Tecnobyte Informática
temp2 em tecnobyte.com.br
Ter Mar 15 09:55:37 -03 2011
Bom dia
O comando abaixo preenche os nulos com base no generator:
UPDATE Tabela
SET Campo = GEN_ID(NomeGenerator, 1)
WHERE Campo IS NULL
IMPORTANTE!
Considerando que a tabela esteja assim:
NULL, NULL, ..., NULL, 1, 2, 3, ..., 5000
e que o valor do generator atual seja 5000, após a atualização a tabela
ficará assim:
5001, 5002, ..., 6000, 1, 2, 3, ..., 5000
No final do processo o generator terá o valor 6000 (ou valor maior caso
outros processos estejam incrementando este generator ao mesmo tempo).
Dependendo do que deseja, poderá também criar um generator especificamente
para este propósito e usá-lo no comando UPDATE que mencionei acima.
Exemplo:
CREATE GENERATOR Gen_Temporario;
SET GENERATOR Gen_Temporario TO 200; -- Se quiser começar a numeração em
201, por exemplo.
UPDATE Tabela SET Campo = GEN_ID(Gen_Temporario, 1) WHERE Campo IS NULL;
DROP GENERATOR Gen_Temporario;
Daniel P. Guimarães
Tecnobyte Informática
www.tecnobyte.com.br
----- Original Message -----
From: "Kleber Oliveira (Softvip)" <kleber em softvip.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, March 15, 2011 8:15 AM
Subject: [firebase-br] Preencher um campo autoincremento após produção
Prezados(as),
Bom dia!
Tenho uma base em produção, entretanto possui uma chave composta, e
decidimos criar uma campo Integer que será autoincremento (Trigger). Os 1000
registros anterior estão Null (desse novo campo). Tem como preenchê-los sem
ter que criar um programa de acerto, ou seja, pelo próprio gerenciador do BD
é possível preencher esse Null crescentemente?
Grato.
Kleber.
Mais detalhes sobre a lista de discussão lista