ORACLE sequences wo genau nutzen?

MP_H1tm4n

Cadet 4th Year
Registriert
Juni 2010
Beiträge
109
Hi community!
Ich erstelle momentan mein erstes ORACLE (11g) Projekt für die Uni. Meine Frage betrifft den Design Aspekt (es soll ein physisches design für ORACLE entstehen indem auch sequences etc aufgezeigt sind):

Ich bin von MS SQL gewöhnt das IDs per auto-increment bequem eingefügt werden. In ORACLE bräuchte ich dafür stets sequence + trigger on insert. Wie ist nun die best practice um in einer entity die ID zu bestimmen?
Setze ich für jede künstliche ID (ID != unique set of values) eine sequence auf?

Danke für eure Tipps.
Dennis
 
Zuletzt bearbeitet:
Ist jetzt nicht unbedingt Oracle, aber ich kenne das so, dass man einen Generator erstellt. Im trigger holt man sich dann den Generator-Value und erhöht diesen.
 
Wie ich es machen könnte ist mir ansich schon klar:
(a) sequence erstellen und immer explizit SEQ_name.NEXTVAl als ID eintragen
(b) sequence erstellen und einen trigger on insert, der die ID automatisch einträgt (OVERHEAD!?)
(c) anderer Weg?

Die zentrale Frage für mich ist: Wie sollte ich es machen?
Ich kann gerade nicht glauben dass sequence+trigger der verbreitete Weg ist um IDs zu händeln

//ADD:
(Chefe82) Schau mal hier
(techonthenet-link)
Alles gelesen, still no best practises ;)
 
Zuletzt bearbeitet: (Chefe's Post)
OK scheint dann wohl wirklich der Weg zu sein, den man geht.

Ich werde wohl meist SEQ+AUTOInsertTRIGGER eintragen,
außer bei einer Entity, die viele Inserts erfährt (dort kein trigger, möchte keinen gezwungenen overhead durch den trigger verursachen)
 
Zurück
Oben