{"id":339,"date":"2019-06-04T05:43:39","date_gmt":"2019-06-04T05:43:39","guid":{"rendered":"http:\/\/flace.de\/?p=339"},"modified":"2019-06-06T19:13:57","modified_gmt":"2019-06-06T19:13:57","slug":"sql-trigger-update-eines-geaenderten-datensaetzes","status":"publish","type":"post","link":"https:\/\/flace.de\/?p=339","title":{"rendered":"SQL Trigger Update eines ge\u00e4nderten Datensatzes"},"content":{"rendered":"<p>Ein Updatetrigger nimmt eine Datenmanipulation vor. Hierbei mu\u00df immer \u00e4usserst vorsichtig gehandelt werden. In diesem Beispiel wird nach dem Speichern eines Datensatzes ein anderes Feld in diesem Datensatz noch ver\u00e4ndert. Hierzu wird mit einer Hilfstabelle gearbeitet. In eine Tabelle <span style=\"color: #ff6600;\">Wartauftraege<\/span> wird der Wert aus dem Datenfeld <span style=\"color: #ff6600;\">Anlagennr<\/span> in das Datenfeld <span style=\"color: #ff6600;\">ExtAuftragsNr<\/span> geschrieben wenn dieses den Wert <span style=\"color: #ff6600;\">Null<\/span> hat.<br \/>\nAchtung: Bein nochmaligen Speichern des identischen Datensatzes wird es zu Problemen kommen.<\/p>\n<p>ALTER TRIGGER [dbo].[trAnlagennummer] ON [dbo].[WartAuftraege] after update<br \/>\nAS<br \/>\nbegin<br \/>\ndeclare @Anlagennr nvarchar(15)<br \/>\ndeclare @AuftragsNr nvarchar(15)<br \/>\nset @Anlagennr = (select top 1 Anlagennr from inserted)<br \/>\nselect @Anlagennr=max(AnlagenNr),@AuftragsNr=max(AuftragsNr) from inserted<\/p>\n<p>update WartAuftraege set extAuftragsNr = AnlagenNr where AuftragsNr = @AuftragsNr and extAuftragsNr is NULL<br \/>\nend<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein Updatetrigger nimmt eine Datenmanipulation vor. Hierbei mu\u00df immer \u00e4usserst vorsichtig gehandelt werden. In diesem Beispiel wird nach dem Speichern eines Datensatzes ein anderes Feld in diesem Datensatz noch ver\u00e4ndert. Hierzu wird mit einer Hilfstabelle gearbeitet. In eine Tabelle Wartauftraege wird der Wert aus dem Datenfeld Anlagennr in das Datenfeld ExtAuftragsNr geschrieben wenn dieses den &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/flace.de\/?p=339\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eSQL Trigger Update eines ge\u00e4nderten Datensatzes\u201c<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[],"class_list":["post-339","post","type-post","status-publish","format-standard","hentry","category-sql"],"_links":{"self":[{"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/posts\/339","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/flace.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=339"}],"version-history":[{"count":4,"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/posts\/339\/revisions"}],"predecessor-version":[{"id":360,"href":"https:\/\/flace.de\/index.php?rest_route=\/wp\/v2\/posts\/339\/revisions\/360"}],"wp:attachment":[{"href":"https:\/\/flace.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=339"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/flace.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=339"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/flace.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}