transaction

Une transaction est une série de changements sur une base de données qui doit entièrement réussir ou entièrement échouer. Par exemple, lorsqu' on transfère de l' argent d'un compte chèque à un compte courant, soit la somme peut tout d' abord être ajoutée au compte courant, puis soustraite du compte chèque, soit d' abord soustraite du compte chèque puis ajoutée au compte courant. Si pour une raison ou une autre une des étapes échoue, l'autre ne doit pas être effectuée.

Une transaction est initiée avec la méthode DB.Begin , elle est terminée soit par l' appel de la méthode DB.Commit , soit elle échoue par l' appel de la méthode DB.Rollback .

Sous MySQL, les transactions ne peuvent être exécutées qu' avec des tables à transaction sécurisées (transaction safe tables) : BDB et InnoDB. Les autres types de tables MySQL (ISAM, MyISAM and HEAP) sont mises à jour (commit) instantanément.

PostgreSQL ne gère pas les transactions imbriquées, donc seuls le premier appel à DB.Begin et le dernier appel à DB.Commit ou DB.Rollback sont pris en compte.