Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SqlTransaction est terminée

Merci pour tous les commentaires. J'ai travaillé avec quelqu'un de MSFT sur les forums MSDN pour comprendre ce qui se passe. Il s'avère que le problème est dû à l'échec de l'une des insertions en raison d'un problème de conversion de la date et de l'heure.

Le problème majeur est le fait que cette erreur apparaît s'il s'agit d'une erreur de conversion de date. Cependant, s'il s'agit d'une autre erreur telle qu'un champ trop long, cela ne cause pas ce problème. Dans les deux cas, je m'attendrais à ce que la transaction existe toujours afin que je puisse appeler Rollback dessus.

J'ai un exemple de programme complet pour reproduire ce problème. Si quelqu'un souhaite le voir ou l'échange avec MSFT, vous pouvez trouver le fil sur les groupes de discussion de MSFT dans microsoft.public.dotnet.framework.adonet sous le fil d'erreur SqlTransaction.ZombieCheck.