Ma compréhension est que, dans une fenêtre de MS SQL Server Management Studio, après avoir effectué une "transaction de début" et avoir ensuite apporté des modifications comme ajouter des données à une table, vous pouvez uniquement interroger cette table et ces modifications à partir de la même fenêtre jusqu'à ce que vous fassiez une "commit transaction".
Existe-t-il un moyen d'effectuer une requête à partir d'une autre source avant d'effectuer la "transaction de validation"?
Spécifique à mon objectif actuel et pour ajouter un peu de contexte. Je fais quelques requêtes SQL à partir d'Excel Power Query. J'aimerais vraiment pouvoir faire ces requêtes avant la "transaction de validation" afin que je puisse faire une analyse et déterminer si je dois faire une restauration au lieu d'une validation.
Conformément aux meilleures pratiques, les transactions doivent être aussi courtes que possible et ne jamais attendre l'interaction de l'utilisateur ; chaque fois que vous effectuez un type de modification de données ou de schéma dans une transaction, cela verrouille les objets ou les lignes qui ont été touchés / modifiés, ce qui fait attendre les requêtes des autres utilisateurs. C'est à son tour peut créer des effets de chaîne qui peuvent arrêter votre serveur de base de données.
Dans le scénario que vous décrivez, je vous recommanderais plutôt de faire une copie des données pour séparer les tables de simulation où vous pourrez apporter vos modifications et revoir les résultats. Une fois satisfait des résultats, utilisez une transaction pour fusionner les données de cette table dans la ou les tables d'origine.
la source