Partager via


Transactions (Transact-SQL)

Une transaction est une unité de travail. Lorsqu'une transaction aboutit, toutes les modifications de données apportées lors de la transaction sont validées et intégrées de façon permanente à la base de données. Si une transaction rencontre des erreurs et doit être annulée ou restaurée, toutes les modifications de données sont supprimées.

Dans SQL Server, les modes de transaction disponibles sont les suivants.

  • Transactions en mode de validation automatique
    Chaque instruction individuelle est une transaction.

  • Transactions explicites
    Chaque transaction est explicitement lancée par l'instruction BEGIN TRANSACTION et explicitement terminée par une instruction COMMIT ou ROLLBACK.

  • Transactions implicites
    Une nouvelle transaction est implicitement lancée lorsque la transaction précédente est terminée, mais chaque transaction est explicitement terminée par une instruction COMMIT ou ROLLBACK.

  • Transaction dont l'étendue est définie par lot
    Uniquement applicable aux ensembles de résultats MARS (Multiple Active Result Sets), une transaction Transact-SQL explicite ou implicite qui démarre sous une session MARS devient une transaction dont l'étendue est définie par traitement. Une transaction dont l'étendue est définie par traitement qui n'est pas validée ou restaurée à la fin du traitement d'un traitement est automatiquement restaurée par SQL Server.

Pour plus d'informations, consultez Transactions (moteur de base de données).