Ich habe eine Tabelle mit einer Wert-Spalte und einer Status-Spalte.Hoffentlich einfache SQL-Frage zum Erzwingen der Unveränderlichkeit einer Spalte basierend auf dem Wert einer anderen Spalte
Was ist der einfachste und effektivste Weg, um das Folgende durchzusetzen? Die Idee ist, dass Geldwerte in die Datenbank eingegeben werden und dann jemand "Final" sagt und danach muss ich keine Änderungen garantieren, da ein Abrechnungsprozess beginnt.
- Neue Zeilen Status = ‚Neu‘ (dh nicht anders)
- Wert nur aktualisiert werden, wenn Status = ‚Neu‘
- Der Status kann zu ‚Final‘ genau einmal geändert werden, und nach dass die ganze Zeile effektiv nur gelesen wird.
Wie erhalten Sie einen SQL Server-Trigger, um eine Einfügung oder ein Update zu stoppen? (Ich bin ein Neuling mit SQL) –
@ Gabriel: Sie verwenden 'RAISERROR'. Siehe das Beispiel [hier] (http://msdn.microsoft.com/en-us/magazine/cc164047.aspx). – RedFilter
Danke, ich schätze die Hilfe. –