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

Okresowe InvalidCastException i serwer nie mógł wznowić transakcji z Linq

To prawdopodobnie nie jest problem z Twoim kodem. Jest to błąd w SQL Server. Podobny problem mieli w SQL Server 2005. Zdarzył się on tylko w odpowiednich warunkach, więc bardzo niewiele osób kiedykolwiek go widziało, a ci, którzy to widzieli, byli bardzo zdezorientowani.

To powiedziawszy, oto kilka rzeczy do sprawdzenia, które zadziałały dla innych z tym samym problemem:

  • Poszukaj czytników danych, które nie są zamknięte. Upewnij się, że robisz myReader.Close() po przeczytaniu żądanych wierszy. Wiele osób po prostu szaleje bez zamykania.
  • Użyj natywnej klasy SqlTransaction zamiast OleDbTransactions, gdziekolwiek jest to możliwe.
  • Spójrz na swoje transakcje. Upewnij się, że zatwierdzasz/wycofujesz się przed zamknięciem połączenia.
  • Użyj Connection.BeginTransation zamiast Connection.BeginDbTransaction


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak utworzyć funkcję rozpoczęcia i zakończenia czasu letniego w SQL Server

  2. Nie można usunąć schematu , ponieważ nie istnieje lub nie masz uprawnień. - SQL Server / samouczek TSQL, część 29

  3. Konwersja między typami danych daty i godziny w SQL Server (przykłady T-SQL)

  4. Zdezorientowany UPDLOCK, HOLDLOCK

  5. Konwertowanie int klucza podstawowego na bigint w Sql Server