sql >> Databáze >  >> RDS >> Sqlserver

Odeslat e-mail pro každý řádek v sadě výsledků

Tento případ je přesně to, k čemu jsou smyčky dobré (a určené).

Protože děláte věci, které nespadají do rozsahu databáze, je naprosto legitimní používat pro ně smyčky.

Databáze jsou navrženy tak, aby ukládaly data a prováděly dotazy na tato data, která je vracejí tím nejužitečnějším způsobem.

Relační databáze mohou vracet data ve formě sad řádků.

Kurzory (a smyčky, které je používají) jsou navrženy tak, aby udržely stabilní sadu řádků, takže s každým z jeho řádků lze provádět určité věci.

„Věcí“ zde nemám na mysli čisté databázové triky, ale skutečné věci, které ovlivňují vnější svět, věci, pro které je databáze navržena, ať už je to zobrazení tabulky na webové stránce, generování finanční zprávy nebo odesílání e-mailu.

Je špatné používat kurzory pro čistě databázové úlohy (jako je transformace jedné sady řádků na jinou), ale je naprosto příjemné je používat pro věci, jako je ta, kterou jste popsali.

Metody založené na množinách jsou navrženy tak, aby fungovaly v rámci jedné transakce.

Pokud váš set-base dotaz z nějakého důvodu selže, vaše databáze se vrátí do stavu, ve kterém byla předtím, ale nemůžete „vrátit“ odeslaný e-mail. V případě chyby nebudete moci sledovat své zprávy.



  1. MySQL kolo v dotazu, špatný výsledek

  2. Jak mohu vložit objekt JSON do Postgres pomocí Java PrepareStatement?

  3. Správný způsob, jak nahrát binární soubor do MySQL prostřednictvím Spring MVC

  4. chyba mysql:ERROR 1018 (HY000):Nelze přečíst adresář '.' (chyba:13)