Ich möchte eine Tabelle/Ansicht durchlaufen und dann einen Prozess starten (z. B. einen Job ausführen, eine E-Mail senden) basierend auf einigen Kriterien.SQL Server - Standardmuster für zeilenweise Operationen in einer Tabelle/Ansicht
Meine willkürliche Einschränkung hier ist, dass ich diese in der Datenbank tun möchten sich, T-SQL auf einem gespeicherten proc, Trigger usw.
Ist dieses Szenario erfordert Cursor, oder gibt es eine andere einheimische T -SQL-Reihe-basierte Operation, die ich nutzen kann?
@John ssis verwenden, wie würde ich, dass jede Reihe gewährleisten nur einmal betätigt wird auf (vorausgesetzt, ich die Fähigkeit, irgendwann wollte Führen Sie mehrere gleichzeitige ssis-Aufgaben mit der jobs-Tabelle aus, um einen höheren Durchsatz zu erreichen. Ich nehme an, ich brauche eine temporäre "in Arbeit" -Flagge, um Konflikte zu vermeiden. Kann das etwas für mich bedeuten oder müsste ich diese Logik noch selbst implementieren? – Howiecamp
@Howiecamp: Ich weiß nicht, was du meinst. Der SQL ausführen-Task würde eine Ergebnismenge erzeugen, die Zeilen enthält. Die For-For-Task würde einmal pro Zeile ausgeführt. Was müssen Sie noch tun, um sicherzustellen, dass jede Zeile nur einmal bearbeitet wird? –