Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Asynchronicznie wykonać procedurę składowaną z formularza systemu Windows, a następnie odłączyć?

To całkiem częsty scenariusz. Nie możesz zrobić niczego w oparciu o klienta, ponieważ klient może odejść i rozłączyć się, a ty stracisz dotychczasową pracę. Rozwiązaniem jest użycie Aktywacja Service Broker :tworzysz usługę w bazie danych i dołączasz aktywowaną procedurę. W swojej aplikacji (lub stronie ASP) wysyłasz wiadomość do usługi i osadzasz niezbędne parametry dla swojej procedury. Po zatwierdzeniu aplikacji komunikat aktywuje procedurę serwisową. procedura serwisowa odczytuje parametry z komunikatu i wywołuje twoją procedurę. ponieważ aktywacja odbywa się w wątku serwera niezwiązanym z oryginalnym połączeniem, jest to niezawodne. W rzeczywistości serwer może nawet wyłączyć i ponownie uruchomić podczas Twoja procedura jest wykonywana, a praca zostanie cofnięta, a następnie wznowiona, ponieważ komunikat aktywujący ponownie uruchomi procedurę serwisową po ponownym uruchomieniu.

Aktualizacja

Opublikowałem szczegóły, jak to zrobić, w tym przykładowy kod na moim blogu:Asynchroniczne wykonanie procedury .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy używasz odpowiednich narzędzi do monitorowania wydajności bazy danych?

  2. Zaleta błędu odmowy dostępu do serwera połączonego SQL 2008

  3. Jak uzyskać tabelę nadrzędną, tabelę referencyjną, nazwę ograniczenia klucza obcego i kolumny w programie SQL Server — samouczek SQL Server / TSQL, część 71

  4. SELECT $ (znak dolara)

  5. Czy szybciej jest UAKTUALNIĆ wiersz, czy USUNĄĆ go i WSTAWIĆ nowy?