Funktion welche einen Insert macht und Serial auslesen

Probleme und Fragen zum Thema Trigger und Funktionen.

Funktion welche einen Insert macht und Serial auslesen

Beitragvon MasterRG » Fr 5. Mai 2006, 00:18

Hallo.

In einer Funktion will ich einne Insert ausführen.
Wie bekomme ich dann die Serial heraus, welche in der Tabelle auf welche der Insert ausgeführt wird?

MfG, Ronny
MasterRG
Neuer Benutzer
 
Beiträge: 1
Registriert: Fr 5. Mai 2006, 00:14

Beitragvon Xandrian » Fr 5. Mai 2006, 07:43

hi,

mit LASTVAL()... evtl das in eine transaktion setzen damit dur sicher diesen einen bekommst...

cu tb.
pg-forum.de unterstützen? Meine Wunschliste

Bild Bild
Benutzeravatar
Xandrian
Erfahrener Benutzer
 
Beiträge: 1612
Registriert: Mi 23. Nov 2005, 10:17
Wohnort: Bayreuth

Beitragvon ads » Fr 5. Mai 2006, 10:16

Die Transaktion ist nicht notwendig (und wird von PG ansonsten automatisch erstellt), der Rückgabewert, den du bekommst, ist immer der, den du zuletzt in deiner Verbindung zur DB genutzt hast.
PG merkt sich diese Werte verbindungsspezifisch, sprich, wenn sich jemand nach dir noch 3 Werte abholt, bekommst du trotzdem deinen letzten angezeigt.

Apropos Transaktionen: Serials werden nicht innerhalb einer Transaktion behandelt. Sprich, brichst du die Transaktion ab, verfallen die Werte des Serials trotzdem und werden nicht wieder recycled. Der Counter zählt einfach immer weiter hoch, jedesmal, wenn er irgendwo genutzt wird.
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören Bild

Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

PostgreSQL Service & Support
ads
Erfahrener Benutzer
 
Beiträge: 4147
Registriert: Mi 8. Feb 2006, 11:58
Wohnort: MD


Zurück zu Trigger und Funktionen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron