Einzelnen Beitrag anzeigen

Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#3

Re: FIREBIRD Datenbank Auto Increment Tutorial.

  Alt 26. Dez 2008, 16:18
Hallo,
ich verwende noch die Version 2.0.1.12855.
In der Version 2.0.1 löse ich das AutoIncrement Problem über einen Generator
und Trigger. Nach jedem Insert feuert der Trigger und schreibt den aktuellen
Generatorwert in ID.
SQL-Code:
CREATE TABLE "JS_TABLE"
(
  "ID"   TINT NOT NULL,
  "js_NAME" varchar(15) COLLATE DE_DE,
CONSTRAINT "PK_JS_TABLE" PRIMARY KEY ("ID")
);
SET TERM ^ ;

CREATE GENERATOR gen_JSTABLE ^

/* Triggers only will work for SQL triggers */

CREATE TRIGGER "TRG_JS_TABLE_0" FOR "JS_TABLE"
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.id is null) then new.id=gen_id(gen_JSTABLE,1);
end
 ^

COMMIT WORK ^
SET TERM ;^
Beim Insert wird die ID nicht angegeben
INSERT INTO JS_TABLE (js_NAME) VALUES ('ZWENTIBOLD') Ob die Version 2.1 einen speziellen Datentyp bereitstellt weiss ich nicht.
I come from outer space to save the human race
  Mit Zitat antworten Zitat