posledni automaticky generovany id a prenositelnost
    Michal Kubecek 
    mike na mk-sys.cz
       
    Úterý Červenec 27 12:03:47 CEST 2004
    
    
  
On Mon, Jul 26, 2004 at 09:44:15PM +0200, Novák Jiří wrote:
>
> firebird a interbase : tez nevim
Nepoužívají se automaticky generovaná ID, ale generátory.
Takže např.
  create generator G_AAA;
  create table AAA (
    ID integer not null primary key,
    ...
  );
  insert into AAA(ID, ...) values (gen_id(G_AAA,1), ...);
Případně si můžete udělat trigger:
  create trigger TRG_AAA_BINS on AAA before insert as
  begin
    if (new.ID is null) then new.ID = gen_id(G_AAA, 1);
  end
Pokud potřebujete získat právě přidanou hodnotu, můžete použít proceduru:
  create procedure NEW_AAA(...)
    returns (R integer)
  as
  begin
    R = gen_id(G_AAA, 1);
    insert into AAA(ID, ...) values (:R, ...);
  end
Z hlediska přenositelnosti vás to asi moc nenadchne, protože přístup se
dost výrazně liší od většiny ostatních.
							  Michal Kubeček 
    
    
Další informace o konferenci Test