Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 02-09-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Con un trigger y un generador podrías solucionar esto:

Código SQL [-]
create trigger TABLA_BI0 for TABLA active before insert position 0
as
begin
  if ( new.CAMPO_ID = 0 ) then new.entrada = gen_id( contador_id , 1 ) ;
end

También podrías hacer un procedimiento para recalcular el campo ID.

Código SQL [-]
create procedure REORDENAR
as
declare variable clave char(8);
declare variable id integer;
begin
   /* Pongo a 0 el contador */
   contador = 0;
   /* Recorro toda la tabla */
   /* RDB$DB_KEY es un campo que identifica a cada registro */
   FOR select RDB$DB_KEY from TABLA do
         into :clave
   DO
   begin
       update TABLA 
       set CAMPO_ID = :id
       where RDB$DB_KEY=:CLAVE;
   end
end
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
seleccionar y modificar fila por fila enMYSQL schaka SQL 14 20-03-2008 06:06:23
fila mas repetida raulmm26 Varios 2 17-03-2007 19:36:52
Forzar a un dbgrid a no crear una nueva fila toorbye Conexión con bases de datos 2 10-10-2005 18:34:35
Nro de fila en TDBGrid lucasarts_18 Varios 16 11-06-2005 16:26:17
Fila del DbGrid Rabata Varios 3 08-11-2004 22:18:13


La franja horaria es GMT +2. Ahora son las 15:59:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi