Frage zum Trigger BSAFILE_BI2
Moderator: SYNERPY
Frage zum Trigger BSAFILE_BI2
Hallo zusammen,
der Trigger BSAFILE_BI2 zählt laut folgender Zeile
IF ((NEW.ID IS NULL) OR (NEW.ID = 0)) THEN NEW.ID = GEN_ID(GEN_BSAFILE,2);
in der Datenbank 2005_A3 bei jedem neuen Datensatz in der Tabelle BSAFILE die ID um zwei hoch anstatt wie sonst üblich nur um 1.
Gibt es dafür eine "logische" Begründung?
Das hochzählen um zwei macht mir nämlich beim testweisen Import von 1000 Artikeln das Leben unnötig schwer, weil dadurch die Indizes der Tabellen
BSA
BSAL
BSAFILE
in welche ich die Daten teilweise per INSERTEX und teilweise per INSERT statements reinhole, bei jedem Datensatz mehr "voneinander weglaufen". Da ist das selbstschreiben von Scripts und Makros umständlicher als es sein müßte, wenn BSAFILE_BI2 nur um 1 hochzählen würde und die Indizes schön geordnet gleich blieben.
Beispiel
BSA_ID=1
BSAL_ID=1
BSAFILE_ID=1 gehören zusammen
dann alle 2er usw.
Derzeit ist es nämlich
1,1,1 --> 2,2,3 --> 3,3,5 .....
Ich habe jetzt mal testweise den Trigger auf eine Erhöhung von 1 gesetzt und (bisher) noch keinen Fehler gefunden ... aber zur Sicherheit doch lieber noch die Nachfrage an die Cracks hier im Forum?
Gruß
Michael
Anmerkung:
Unser Artikelstamm umfaßt ca. 10.000 Artikel, da wäre ein fließender Import schon hilfreich ...