![]() |
Datenbank: ms sql • Version: 2005 • Zugriff über: ...
trigger
Guten morgen,
ich habe die aufgabe bekommen, einen bzw. mehrere trigger zu schreiben. und zwar folgendes problem. ich habe eine tabelle User die wie folgt aufgabaut ist. user_no | description | user_name 1 | müller | müllma 2 | schmidt | schmth 3 | schraube | schrth und eine tabelle group_user param_group_no | user_no 1 | 1 1 | 3 2 | 1 2 | 3 3 | 2 nun zu meinem problem .. wenn ich in tabelle user die user_no = 3 lösche .. möchte ich in der tabelle group_user alle datensätze löschen, in der die user_no = 3 ist ich soll das ganze über einen trigger machen .. ich weiß , dass es einfacher ist, wenn man das ganze über relationships macht .. was muss man den in das querry des triggers reinschreiben, damit er die aufgabe erfüllt ? danke für eure mithilfe |
AW: trigger
Hi!
Ich kenne die genaue Syntax von MS SQL nicht und weiß auch nicht, welche Eingabemöglichkeiten du hast, aber sinngemäß sollte es so aussehen:
SQL-Code:
CREATE or REPLACE TRIGGER trigger_name
AFTER DELETE ON User FOR EACH ROW BEGIN DELETE FROM group_user WHERE user_no = :NEW.user_no END; Btw. ist User imho ein schlechter Name für eine Tabelle weil Schlüsselwort. Liebe Grüße, Frederic |
AW: trigger
Das scheint unter MS SQL nicht ganz so einfach zu sein (man muss wohl auf Deleted zugreifen, wenn ich das richtig überflogen habe).
![]() ![]() |
AW: trigger
SQL-Code:
CREATE TRIGGER trigger_name ON user FOR DELETE
AS DELETE FROM group_user WHERE user_no IN (SELECT user_no FROM deleted) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz