Aktywne Wpisy

WezelGordyjski +33
Kocham życie singla! Chcę ekran projekcyjny, to go sobie maluję na ścianie! Żadnych kłótni o niszczenie salonu. A w szafce czekają już chipsy i batony ( ͡° ͜ʖ ͡°)

XYZ91 +19
#famemma Jedno wam powiem. Ci influenserzy łącznie z tymi wardegami i Baxtonami to nowy poziom zeszmacenia się za kasę, kiedyś takimi określeniami były nazywane ulicznice, ale oni przebili to po stokroć bo te chociaż nie udają, a tu jeden robi film na drugiego w którym ujawnia jego chore fantazje, a ten musi mu za to podziękować do opinii publicznej chociaż pewnie ma ochotę mu wbić nos w głowę, żeby dalej istnieć i
![[AMA] Paweł Fajdek, pięciokrotny mistrz świata w rzucie młotem](https://wykop.pl/cdn/c0834752/cb6c48282d3c4c70261f8afb5f9fa77e36d122724502ac5937f39f268d049939,q70.jpg)




Tabela jest zdenormalizowana, mamy pola SourceID, CreatedDate, Value, UpperAllowedValue, LowerAllowedValue (dozwolone wartości są zmienne zależnie od godziny i dnia).
Jeśli przez pewien zbyt długi czas (zależny od danych w innej tabeli) utrzymuje się zbyt duża wartość, należy wstawić dane do tabeli AlertTable, wysłać maile. Jeśli stan został naprawiony, to oznaczyć rekord w AlertTable jako zakończony. Jeśli stan utrzymuje się dłużej niż 24h to zamknąć poprzedni alarm, utworzyć nowy.
Jak to poprawnie rozwiązać? Triggery, scheduler, tabele pomocnicze?
Moja baza danych to #sqlserver, ale rozwiązania w innych bazach #sql też się przydadzą.
Myślałem raczej o triggerze na tabeli z odczytami, który to trigger pisze do tabeli o strukturze w stylu
SourceID, AlertID NULL, LastValidRead DATETIME, LastInvalidRead DATETIME, IsClosedCase BIT. I przy każdym wstawianiu danych sprawdzać czy dane są w porządku, jeśli tak - to zamykać powiązany rekord, jeśli nie są - to tworzyć/update'ować.(Sprawdza w sensie np ostatnie 10 rekordow )
SP tez moze byc, ale skrypt daje wiekszą elastyczność (za jakiś czas możesz chcieć wysylać maila albo odpalać jakieś api)
Tabela alert jak napisales.
Sama tabele z logami mozesz co jakis czas czyscic.