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

Jak zaadresować zamknięcie SqlConnection z poziomu ExecuteReadera?

Czy istnieje jakiś problem z logiką ponawiania prób na podstawie dowolnego wyjątku (a nie określonego SqlException)? Zakładam, że wyjątki wynikające z błędów programowania zostaną ostatecznie wykryte podczas fazy testowania, a poważne (takie jak SO) wyjątki i tak nie zostaną przechwycone przez blok catch, więc ogólny blok wyjątków dla logiki ponawiania może być akceptowalnym pomysłem.

Jeśli nie, to prawdopodobnie Twoje rozwiązanie polegające na zawijaniu ExecuteReader byłby dobrym pomysłem. Biorąc pod uwagę, że jest to udokumentowane zachowanie, musisz również zwrócić uwagę na inne wyjątki, które może generować metoda ExecuteReader - więc prawdopodobnie będziesz musiał przewidzieć IOException i ObjectDisposedException oprócz InvalidOperationException .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Minimalnie zalogowany Wstaw do

  2. Procedura składowana, przekaż nazwę tabeli jako parametr

  3. Jak zaimportować plik JSON do tabeli serwera SQL?

  4. Nie można zabić wycofywania transakcji SPID w toku

  5. Uzyskaj pierwszy dzień tygodnia w SQL Server