Boboss99
Messages postés54Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention30 juin 2004
-
23 mai 2003 à 12:04
quickaboy
Messages postés7Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention 2 mai 2005
-
17 juil. 2003 à 18:14
Bonjour,
je fais actuellement un programme VB en connexion avec SQL-Server
mon problème est que j'aimerai(si c possible bien sur) dans une transaction insérer 2 enregistements(A et B) dans 2 tables différentes.
en mettant dans l'enregistrement B l'identifiant de l'enregistrement A
ou les 2 insertions se font, ou aucune ....
voici un petit exemple que je test mais ca ne marche pas, je n'arrive pas a faire le select car la transaction principale n'est pas finit je pense
Dim ConnexionBD as new ADODB.Connection
Dim Record as neaw ADODB.Recordset
init ConnectionBD .....
ConnexionBD.Execute ("Begin Transaction toto")
ConnexionBD.Execute ("Begin Transaction titi")
ConnexionBD.Execute ("Insert into table1(nom) values ('bonjour')")
ConnexionBD.Execute ("Commit Transaction titi")
set Record = ConnexionBD.Execute ("Select id from table1 where nom='bonjour'")
ConnexionBD.Execute ("insert into table2 (date,nom) values ('10/10/2000','" & Record![nom]) & "')")
ConnexionBD.Execute ("Commit Transaction toto")
est-ce possible ??? qq à une idée ??? ou à été confronté au même pb ???
merci beaucoup a tout ceux qui pourront m'aider ca serait super sympa top méga cool génial
A voir également:
La transaction a été bloquée sur les ressources verrou
quickaboy
Messages postés7Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention 2 mai 2005 17 juil. 2003 à 18:14
Salut,
Tout d'abord je te conseille d'utiliser les utilitaires fournis dans VB .NET (si c'est celui que tu utilises ...) pour les connections à un serveur SQL. Ils prennent tout en compte y compris les drivers nécessaires.
Tu peux faire par exemple :
dim connSQL as sqlconnection() = new sqlconnection()
Pour ce qui est des transactions, il en est de même :
dim mytransact as sqltransaction() = connSQL.BeginTransaction(IsolationLevel.Serializable)
dans laquelle le IsolationLevel.Serializable est le paramètre de sécurité de ta transaction ... (voir infos ailleurs).
et tu peux "committer" par mytransact.Commit() et rollbacker par mytransact.RollBack()
:question) :question) Quickaboy, el debutante !
:question) :question)