Accueil   |   Forums   |  Offres d'emplois   |  Contact    |   Mon compte   
vendredi 16 mai 2008 Rechercher :
Déposez votre CV gratuitement sur touslesemplois
 
comparer les prix
» Logiciels
» Jeux vidéos
» Matériel Informatique


» ASP.NET
» ASP
» SQL
» PHP
» JAVASCRIPT
» XML
 


» ACTUALITÉ / DIVERS
» DROIT DE L'INTERNET
» INFOS VIRUS
» PATCHS MICROSOFT
» SÉCURITÉ
» BASES DE DONNÉES
» DOWNLOAD .NET
» LOGITHÈQUE
» SERVICES WEB
» Y SONT FOUS !
» .NET
» ASP
» ASP.NET
» JAVA
» PHP
» XML
» LANGAGE C#
» LANGAGE VB.NET
» UNIX / LINUX
» WINDOWS
» EVÈNEMENTS
» GASP
» MICROSOFT
 



Vous êtes ici : Articles ASP > NOTES DE COURS

Les transactions et ADO
Comme son nom l'indique une transaction est un échange de données entre un ensemble A et un ensemble B. Par exemple, lorsque vous règlez vos courses avec votre carte bancaire, votre compte est alors débité, et celui du magasin est crédité. La transaction n'est pas ici simplement le fait de débiter ou de créditer un compte mais regroupe l'ensemble des deux opérations.


ABONNEZ-VOUS GRATUITEMENT A LA REVUE DE PRESSE "LES Z'ACTUS" ET RECEVEZ CHAQUE JOUR DANS VOTRE BOITE AUX LETTRES LA MEILLEURE INFORMATION DEDIEE AUX WEBMASTERS / DEVELOPPEURS.

Indiquez votre adresse E-mail :

Technologie : ASP 
Date : 28/05/2006   
Auteur : ASP MAGAZINE

Qu'est ce qu'une transaction?

Comme son nom l'indique une transaction est un échange de données entre un ensemble A et un ensemble B.

Le meilleur exemple utilisé pour expliquer une transaction est celui de la banque et de la carte de crédit :
Lorsque vous règlez vos courses avec votre carte bancaire, votre compte est alors débité, et celui du magasin est crédité. La transaction n'est pas ici simplement le fait de débiter ou de créditer un compte mais regroupe l'ensemble des deux opérations.

En effet pour débiter le compte du client X, la banque doit être sûre que le compte du magasin a été crédité... Si le compte du magasin n'est pas crédité (pour une raison quelconque ... panne de matériel, etc...) alors l'action de débiter sur le client est annulée.
Voilà en gros ce qu'est une transaction. C'est la capacité de pouvoir gérer n actions, en étant sûr que les n actions se sont toutes déroulées correctement.

Les Transactions et ADO

Ado (composant d'accès aux données) fournit 3 méthodes (BeginTrans, RollbackTrans, CommitTrans) permettant de gérer une transaction. Ces méthodes se situent au niveau de l'objet connection. Tout recordset ouvert alors sur cet objet ne sera validé qu'à l'appel de la méthode CommitTrans.

  • BeginTrans : Début de la transaction
  • CommitTrans : Validation de la transaction
  • RollbackTrans : annule la transaction en cours

Exemple d'utilisation d'une transaction :

Dans la base de donnée nous disposons d'une table client dont un des champs compte contient l' argent dont dispose le client sur son compte.
Egalement une table magasin, contenant une liste de magasins avec leur champ compte associé.

<%
'--- Client_debit est le numéro de client à débiter
client_debit=2
'--- Magasin à crédité dans la transaction
magasin_credit=3
'--- Montant de la transaction entre magasin et client (1700 F)
montant_transac="1700"
'------- Ouverture de l'accès aux données
Set conn=server.createObject ("ADODB.connection")
conn.open "base_de_donnee","",""

'----- Début de la transaction
conn.Begintrans
SQL="select * From client where id_client="&client_debit
Set rs=server.createObject("ADODB.recordset")
rs.open SQL, conn, 3, 3
rs.movefirst
rs("compte")=rs("compte")-montant_transac
rs.update
SQL="select * From magasin where id_magasin="&magasin_credit
Set rs1=server.createObject("ADODB.recordset")
rs1.open SQL, conn, 3, 3
rs1.movefirst
rs1("compte")=rs1("compte")+montant_transac
rs1.update
'--- Si les deux actions précédentes se sont effectuées correctement
'--- La transaction est validée
conn.CommitTrans
set rs=nothing
set rs1=nothing
set conn=nothing
%>



ASP Serveur - L'hébergement ASP.NET


A RETENIR CETTE SEMAINE
16/05/2008 - Logiciels Microsoft gratuits pour les étudiants
Vous êtes étudiant ? N’attendez pas pour télécharger* gratuitement et utiliser les derniers logiciel ...
16/05/2008 - Lillois, ne manquez pas les Wygdays 2008
Le 22 mai prochain à Lille, vous êtes invité à un événement unique dédié aux développeurs, organisé ...
16/05/2008 - Flash 10 est dans les bacs, Silverlight prend du retard
On est peut-être à un tournant très important de la bataille que se livrent Microsoft et Adobe sur l ...
15/05/2008 - Comment manipuler simplement le contenu d'un fichier WordML ?
Le format WordML (et plus largement OpenXML ) est une grande avancée: il permet de manipuler les doc ...
15/05/2008 - Package d'installation réseau de Windows XP Service Pack 3 pour les informaticiens
Ce package d'installation est destiné à permettre aux informaticiens et aux développeurs de configur ...
15/05/2008 - Mono supporte désormais Windows Forms et Silverlight
Jour de gloire pour le projet Mono. Miguel de Icaza annonce tout d'abord sur son blog la première re ...
14/05/2008 - Deux Services Packs en bêta pour Visual Studio
Microsoft annonce deux Services Packs en version bêta pour Visual Studio 2008 et pour le framework . ...
(c) 1999-2006 ASP MAGAZINE SARL
Partenaires : Codes sources c2i ASP-PHP
Hébergement serveurs dédiés Windows


Hit-Parade