Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Изпълнение на съхранена процедура от формуляр на Windows асинхронно и след това прекъсване на връзката?

Това всъщност е доста често срещан сценарий. Не можете да правите нищо базирано на клиента, защото клиентът може да си отиде и да прекъсне връзката и ще загубите работата, постигната до момента. Решението е да използвате Активиране на посредник на услуги :създавате услуга в базата данни и прикачвате активирана процедура. Във вашето приложение (или ASP страница) изпращате съобщение до услугата и вграждате необходимите параметри за вашата процедура. След като приложението ви се ангажира, съобщението активира сервизната процедура. сервизната процедура чете параметрите от съобщението и извиква вашата процедура. тъй като активирането се случва на сървърна нишка, несвързана с вашата оригинална връзка, това е надеждно. Всъщност сървърът може дори да се изключи и рестартира докато вашата процедура се изпълнява и работата ще бъде върната назад и след това възобновена, тъй като съобщението за активиране ще задейства отново сервизната процедура след рестартирането.

Актуализация

Публикувах подробности как да направя това, включително примерен код в моя блог:Изпълнение на асинхронна процедура .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да добавя auto_increment към колона в SQL Server 2008

  2. SQL Server 2008:Проблеми с ODBC връзката

  3. SQL-Server игнорира моето COLLATION, когато използвам оператор LIKE

  4. Как да картографирате поле на обект, чието име е запазена дума в JPA

  5. Трябва ли да изберете типовете данни MONEY или DECIMAL(x,y) в SQL Server?