Gestion des transactions

Contenu du snippet

Voici un exemple type qui vous permettra d'eviter l'execution de traitement si celui ci n'a pas abouti...
A vous de tester le code...

Source / Exemple :


<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>

<script runat="server">
	' On définit la connection
	Dim Conn As New OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath("\testnet\test.mdb"))

	sub Page_Load(obj as object, e as eventargs)
		dim objTrans as OleDbTransaction
		dim objCmd as OleDbCommand = new OleDbCommand ("DELETE FROM CLIENT WHERE CL_ID = 7", Conn)

		Conn.Open()
		objTrans = Conn.BeginTransaction()
		objCmd.Transaction = objTrans

		try
			objCmd.ExecuteNonQuery

			objCmd.CommandText = "xcvDELETE FROM CLIENT WHERE CL_ID = 8"
			objCmd.ExecuteNonQuery()
			objTrans.Commit()
			Label1.Text = "Les 2 requêtes de suppression ont été executées avec succès !"
		catch ex as OleDbException
			objTrans.RollBack()
			Label1.Text = ex.Message & "<p>"
			Label1.Text = "Une erreur est survenue durant l'execution des requêtes !"
		finally
			objCmd.Connection.Close()
		end try
	end sub
</script>

<html>
<body>
	<form runat="server">
		<asp:Label id="Label1" runat="server" maintainstate=false />
	</form>
</body>
</html>

Conclusion :


Bon courage et bonne programmation

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.