Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#5

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 09:50
weiter details zur weiteren erklärung: ich habe eine anwendung, die mir das folgende macht:
- zuerst wird die höchste id in tbl1 gesucht und um 1 erhöht, somit habe ich die nächste id
- dazu gibt es einen datensatz, der in tbl1 landet
- zu diesem einen datensatz gibt es bis zu 15 datensätze, welche in tbl2 landen. bei diesen datensätzen soll die id automatisch gesetzt werden, eben über einen trigger und eine passende sequenz für tbl2 (dazu siehe obigen sql-code). eine spalte, namens vid, referenziert den einen datensatz in tbl1.

die datensätze werden per transaktion in die datenbank geschrieben., d.h. erst der insert in die tbl1 und dann die mehreren inserts in tbl2. später erfolgt keinerlei update von id in tbl1, oder id in tbl2, geschweige denn von vid ind tbl2.

soweit klar, wie das ganze funktioniert? mein problem besteht eben nun darin, dass die automatisch id-vergabe in meinen augen falsch abläuft und ich weiß nicht wieso, da ja der code vom trigger einen fehler verursachen müsste, es aber nicht immer macht! füge ich einen weiteren datensatz ein, auch beim gleichen, bei dem der fehler aufgetreten ist, dann macht der trigger das richtig. ich bin echt am verzweifeln...

@marabu: ich ordne die werte ja selbst per ORDER BY, ich überlasse das freilich nicht dem zufall. wie du der oberen result-tabelle entnehmen kannst liegt es ja auch nicht daran, sondern an der evtl. falschen vergabe der id für tbl2.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat