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 Databases