SOG-Helpcenter Logo SOG Business - Software

SOG SQL-Server Trigger


Logbuchmeldungen der SQL-Server Trigger zu hhupd bzw. key_* Datenfeldern

 

Wann/ Warum werden Warnungen ausgegeben?

 

Sofern bei einem SQL Update das Datenfeld HHUPD nicht beachtet wird, sorgt der SQL-Server Trigger für eine Logbuch-Meldung vom Typ Warnung, da dies zu Performance Problemen führen kann.

 

Beispiel: Update modifiziert 100 Datensätze, der SQL-Server Trigger sorgt dann pro betroffenen Datensatz, das eine Aktualisierung erfolgt. Es werden also 101 Update/Locks erzeugt.

 

Lösung: Nutzung der SQL-Server Funktion dbo.vacos_hhupd() oder Generic Statement ${hhupd} zum Aktualisieren des Datenfelds hhupd

 

 

Wann/ Warum werden Fehler ausgegeben?

 

Ähnlich ist es bei den key_x Datenfeldern, nur hier sorgt der SQL-Server Trigger für eine Logbuch-Meldung vom Typ Fehler, da hier das ausgeführte SQL-Statement (Update/Insert) inkonsistente/fehlerhafte Daten erzeugt hätte, welche durch den SQL-Trigger korrigiert werden.

 

Diese Logbuch Meldungen treten immer dann auf

  • wenn per SQL-Statement ein Datenfeld (welches auch Bestandteil eines key_x ist) verändert wird, ohne das das entsprechende key_x mit aktualisiert wird (key_x wird korrigiert)

    oder

  • wenn per SQL-Statement das key_x Datenfeld geändert wird, ohne das entsprechende Datenfeld ebenfalls anzupassen (key_x wird im Anschluss wieder auf den Wert der gesetzt den die Einzelfelder beinhalten, SQL-Statement ändert Daten ohne das Daten geändert sind)

Zusätzlich gilt hier auch das Performance Themen wie bei hhupd (siehe oben).

 

Lösung: Nutzung der (siehe Datenhandbuch) der dbo.${tabelle}_build_{datenfeld} SQL-Server Funktion, welche SOG hierfür bereitstellen.