Vous pouvez définir le niveau d'isolation des transactions tant au niveau de la connexion et le niveau déclaration/transaction. Si je comprends votre scénario correctement, je considérerais ajuster le niveau d'isolation de transaction avant votre requête de mise à jour spécifique seulement, si la majorité de l'autre activité dans la connexion donnée va être l'activité de lecture seule. Gardez à l'esprit que le niveau d'isolation par défaut pour SQL Server est Read Committed, donc si vous définissez un niveau d'isolation différent au niveau de la connexion, vous devrez passer à Read Commited au niveau transaction/instruction avant votre mise à jour. .
Une chose à considérer est bien sûr de laisser le niveau d'isolement par défaut tel quel. Y a-t-il une raison spécifique pour laquelle vous pensez que Read Committed n'est pas approprié pour votre activité de lecture générique?
Avez-vous du sens? Faites-moi savoir si vous avez besoin de plus de précisions.
Cheers, John
Mise à jour Basé sur les commentaires. Assez juste, si vous développez une base de données OLTP haut de gamme, vous voudrez peut-être regarder une technologie/principe SQL Server appelé versioning de la ligne. Cela vous permettra d'effectuer des lectures d'une version d'un enregistrement pour ainsi dire. Il y a des frais généraux sur le tempdb lorsque vous utilisez de telles techniques, mais si vous utilisez suffisamment de matériel, cela peut être approprié. Le livre blanc suivant est un excellent guide pour SQL Server Row Versioning/Snapshot Isolation
http://msdn.microsoft.com/en-us/library/ms345124.aspx
Merci, je ne sais pas comment j'ai raté. – tpower