Autor Beitrag
doc_summer
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 12.04.04 11:36 
Hi!
Ich habe mich jetzt doch für FB-Embedded entschieden.
Folgendes Problem hab ich:

Unter PostgreSQL gabs beim Create Table Statement den
Datentyp serial (ist normaler Integerwert) der bei einem Insert nicht Explizit angegeben werden musste.

(Da die Datenbank dann dafür sorgte, das zum Beispiel eine ID, die mit "serial" angelegt wurde, automatisch hochgezählt wurde.)

Ich bin mit der FB-Syntax noch nicht so vertraut.

Gibt es so was ähnliches auch hier?
Oder muss ich hier massiv mit Triggern arbeiten?
Und wenn ja- wie sieht so ein Trigger hier dann aus?

Viele Grüsse und Danke
Chris
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Mo 12.04.04 13:45 
Gibts so nicht. Mußt Generator/Trigger nehmen, oder von Hand zu Fuß eintragen (Stored Procedure), z.B.:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
CREATE GENERATOR GEN_REC_ID;

CREATE TRIGGER REC_BI0 FOR REC
ACTIVE BEFORE INSERT POSITION 0
AS 
begin 
  IF (NEW.ID IS NULL) THEN   
  begin 
    NEW.ID = GEN_ID (GEN_REC_ID,1);
  end 
end
^

SET TERM ; ^

_________________
Gruß
Hansa
doc_summer Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 12.04.04 22:02 
Ahh cool! Das ging aber Flott.

ich habe ne Tabelle z.B. Autos:
create table Autos (
id integer,
name VARCHAR(256))

"id" soll automatisch hochgezählt werden.. Und dann?

CREATE GENERATOR GEN_REC_ID;

CREATE TRIGGER REC_BI0 FOR REC // Wo Referenzier ich da auf Autos.id? hier?
ACTIVE BEFORE INSERT POSITION 0 // Was ist Active?
AS
begin
IF (NEW.ID IS NULL) THEN // new.id wäre dann hier Autos.id?
begin
NEW.ID = GEN_ID (GEN_REC_ID,1); //zählt man so hoch?
end
end
^

SET TERM ; ^ // Was zum Geier ist Set Term?? und vorallem was bedeutet das "^" Zeichen?

Fragen über Fragen.. Aber geil..
Kannst Du mir hier noch irgendwei weiterhelfen?
Oder besser noch ein Beispiel für meine Autos tabelle aufzeigen?
Vielen Dank und Grüsse
Chris
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Mo 12.04.04 23:36 
Ersetze einfach REC mit AUTO. Und mache den Rest so, wie gehabt. 8)

EDIT: Welches Tool benutzt Du eigentlich für die Tabellen anzulegen ?

_________________
Gruß
Hansa