Zum Inhalt springen

UPDATE Trigger Problem bei SQL Server


bigpoint

Empfohlene Beiträge

Hallo,

ich möchte mit Hilfe von einem Trigger in eine Tabelle Daten speichern wenn in eine

Spalte von der Tabelle wo der Trigger eingelegt worden ist man wert null schreibt, und aber Früher einen wert da wahr.

So habe ich es versucht zu lösen,


CREATE TRIGGER [UPDATE_TEST] ON [dbo].[TEST]
FOR UPDATE
AS
insert into DeleteProtokol(lalala)
select lalala from inserted
where datumspalte is null

[/PHP]

leider funktioniert es nur bedingt dh. es werden werte auch gespeichert wenn das wert vorher auch null wahr.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Naja, in der deleted-Tabelle stehen ja die Daten vor dem Update (der SQL-Server macht bei einem UPDATE ja nichts anderes als ein DELETE und danach ein INSERT) - also bekommst du damit heraus, ob in der Spalte vorher ein NOT NULL stand. Wenn du das ganze dann noch mit LEFT JOIN zusammensetzt, kannste auch herausfinden, wenn der Datensatz neu erstellt wurde - also in etwa so:



insert into DeleteProtokol (lalala)

select lalala from inserted i

  left outer join deleted d on (d.id = i.id)

where  i.datumspalte is null and d.datumspalte is not null

Vorausgesetzt, der Primary Key heißt ID - mit dem obigen Statement müsstest du dann alle Datensätze erwischen, die vorher schon in der DB waren, im Feld datumspalte einen Wert stehen hatten und jetzt dort NULL eingefügt werden soll.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...