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

Броят на транзакциите след EXECUTE показва, че липсва оператор COMMIT или ROLLBACK TRANSACTION - SQL server 2005

Не мисля, че нещо липсва. Това вероятно е вътрешна съхранена процедура, която се извиква от вътрешността на транзакция (TRANCOUNT =1), стартира своя собствена транзакция (TRANCOUNT =2) и след това я връща обратно. Е, това означава да го върнете обратно, но връщането засяга всички транзакции, а не само най-вътрешната, така че процедурата прецаква потока на изпълнение.

Начинът за намиране на мястото зависи от наличните инструменти/умения. По-добър начин е да използвате SQL Profiler, който показва всички команди, изпълнени от приложение срещу сървъра. Намерете най-външната съхранена процедура и прегледайте нейния код, търсейки други извиквания на процедури.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL за генериране на XML на таблични данни

  2. Преобразуване на число във футове и инчове

  3. Как мога да предотвратя нарастването на журнала в SQL Server, когато вмъквам милиони записи

  4. Получаване на странна грешка при опит за запазване на SSRS отчет

  5. Най-доброто ниво на изолация за избягване на задънени блокировки с помощта на изречение UPDATE в Sql Server 2005