# Datenbank Trigger auf Update Tabelle s\_articles\_details zickt rum...

**URL:** https://forum.shopware.com/t/datenbank-trigger-auf-update-tabelle-s-articles-details-zickt-rum/61787
**Category:** Programmierung
**Created:** [16. September 2019 um 10:30 UTC](https://forum.shopware.com/t/datenbank-trigger-auf-update-tabelle-s-articles-details-zickt-rum/61787 "2019-09-16T10:30:19Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![rotzschnuten](https://avatars.discourse-cdn.com/v4/letter/r/87869e/32.png) [@rotzschnuten](https://forum.shopware.com/u/rotzschnuten)
#### Post date: [16. September 2019 um 10:30 UTC](https://forum.shopware.com/t/datenbank-trigger-auf-update-tabelle-s-articles-details-zickt-rum/61787/1 "2019-09-16T10:30:19Z")

</div>

Guten Tag,

ich habe ein einfaches Anliegen: Ich möchte bei jeder Änderung des Bestandes eines Artikels ein Datum speichern, damit ich weiß wann sich der Bestand zuletzt geändert hat: quasi „Wann wurde der Artikel zuletzt gekauft“. Dazu habe ich einen Trigger in der Datenbank angelegt der mir bei Update der Tabelle s\_articles\_details (prüft ob sich das Bestandfeld instock ändert) ein aktuelles Datum in attr15 in s\_articles\_attributes schreibt.

Was funktioniert: Wenn atttr15 leer ist wird das aktuelle Datum bei Bestandsänderung im Backend reingeschrieben. Wenn ich den Bestand in der Datenbank direkt ändere wird dieses Datum aktualisiert.

Was nicht funktioniert: Wenn ich den Bestand im Backend ändere und es ist schon ein Datum in attr15 vorhanden, wird es nicht aktualisiert. Es ist als ob der Trigger dann nicht gestartet wird.

Wird die Datenbank über das Backend gecacht? Wenn ja, warum funktioniert es wenn das feld NULL also leer ist? Gibt es eine Lösung dafür oder funktioniert der Ansatz mit Shopware so nicht? Habt ihr vielleicht eine andere Idee?

&nbsp;

Mit freundlichen Grüßen

Bastian

---

<div class="post-metadata">

### Author: ![sacrofano](https://avatars.discourse-cdn.com/v4/letter/s/65b543/32.png) [@sacrofano](https://forum.shopware.com/u/sacrofano)
#### Post date: [16. September 2019 um 10:55 UTC](https://forum.shopware.com/t/datenbank-trigger-auf-update-tabelle-s-articles-details-zickt-rum/61787/2 "2019-09-16T10:55:49Z")

</div>

Hallo,

**vermutlich** wird dein Feld mit dem alten Wert überschrieben nachdem dein Trigger ausgelöst wurde. Ablauf aus dem Backend 1.) Update s\_articles\_details, 2.) Trigger löst aus 3.) das Backend updated die Tabelle s\_articles\_attributes mit den Inhalten (alte Werte aus dem geladenen Datensatz, die nicht null sind).

Meine Lösung wäre ein regelmäßig ausgeführtes SQL Script, was den Wert setzt.

---

<div class="post-metadata">

### Author: ![rotzschnuten](https://avatars.discourse-cdn.com/v4/letter/r/87869e/32.png) [@rotzschnuten](https://forum.shopware.com/u/rotzschnuten)
#### Post date: [16. September 2019 um 11:59 UTC](https://forum.shopware.com/t/datenbank-trigger-auf-update-tabelle-s-articles-details-zickt-rum/61787/3 "2019-09-16T11:59:58Z")

</div>

Hallo sacrofano,

das wars! Danke dir! Es wird tatsächlich der alte Wert nochmal drüber gebügelt, der Sinn dahinter bleibt mir allerdings verborgen. Ich habe es nun so gelöst dass in der attributes Tabelle nochmal geprüft wird, ob das neue Datum \< altes Datum ist, wenn ja dann schreibe das alte wieder rein, also das vom Trigger.

Nochmals vielen Dank, manchmal sind die Lösungen einfach.

Gruß

Bastian
