![]() |
![]() |
|
![]() |
![]() |
![]() |
#1 |
Jr. Member
![]() Registriert seit: 10.08.2004
Alter: 44
Beiträge: 33
|
![]() Hallo,
ich habe folgendes Problem: Ich habe eine Tabelle mit ca. 25 Spalten, jetzt möchte ich, wenn ein Wert eines Datensatzes geändert wird, die ganze Zeile der Tabelle in eine LogTabelle schreiben. In der LogTabelle soll natürlich der Zustand vor der Änderung des Datensatzes stehen. Kann mir da mal jemand weiterhelfen, ich dachte da an einen Trigger. Oder hat wer eine bessere Idee? Wie würde so ein Trigger ausschauen? Hab noch nicht viel mit Trigger gearbeitet. Danke für eure Hilfe. Lg, Gerald |
![]() |
![]() |
![]() |
#2 |
Veteran
![]() Registriert seit: 22.04.2004
Alter: 51
Beiträge: 216
|
![]() Und womit hast Du die Tabelle erstellt bzw. willst Du den Trigger programmieren?
Beim Raten bin ich leider immer so schlecht ![]() |
![]() |
![]() |
![]() |
#3 |
Jr. Member
![]() Registriert seit: 10.08.2004
Alter: 44
Beiträge: 33
|
![]() Mit SQL Server 2000.
|
![]() |
![]() |
![]() |
#4 | |
Veteran
![]() Registriert seit: 22.04.2004
Alter: 51
Beiträge: 216
|
![]() Zitat:
![]() mfG Testi |
|
![]() |
![]() |
![]() |
#5 |
Elite
![]() Registriert seit: 08.11.2001
Alter: 42
Beiträge: 1.285
|
![]() Vermutich würde es etwa so aussehen:
Code:
CREATE TRIGGER logchange BEFORE UPDATE ON TABLE atable FOR EACH ROW EXECUTE PROCEDURE logfunction () In PostgreSQL hat diese Funktion dann die zusätzlichen Variablen 'NEW' und 'OLD', die die neuen und den alten Datensatz beinhalten. Das ganze wird in MsSQL nicht sonderlich anders ablaufen. Aber Trigger sind auf jeden Fall der vernünftigste Weg. mfg c.
____________________________________
www.sagmueller.net Freedom - use it or lose it (Lawrence Lessig) Im übrigen bin ich der Meinung, dass Microsoft zerschlagen werden muss. |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|