Question : Problème de transaction

C'est le système courant de l'accès 2007 avec une partie postérieure de SQLServer 2005. J'ai une routine qui fait des signalisations multiples dans le système courant. Je dubegged l'et l'ai fonctionnant. Ainsi j'ai décidé de la rendre tout plus robuste en employant une transaction qui pourrait être roulée en arrière si un problème occurs.

peu de temps après faire le .BeginTrans j'ouvrent 2 recordsets d'ADODB. Je constate qu'une erreur se produit maintenant pendant que le deuxième recordset est ouvert. J'ai permuté mon code autour de sorte que le deuxième recordset soit ouvert d'abord. Tellement maintenant l'erreur se produit quand elle essaye d'ouvrir l'autre recordset. En d'autres termes, l'erreur se produit sur n'importe quel recordset est ouvert en second lieu. L'erreur retournée est -2147467259

I pourrait récrire mon code de sorte que des recordsets ne soient pas ouverts pendant une transaction, est-ce que mais je préférerais être capable laisser mon code comme il is.

Why peut moi ouvrent un recordset avec succès et ont alors une erreur la seconde ?

class= de

Réponse : Problème de transaction

Using le code dans le poteau relatif, considérer ce qui se produit quand l'adjacent_find envoie le left= (22, A) et right= (22, A) à isDistEqual (). Les distances s'assortissent, mais l'identification d'étudiant ne s'assortissent pas et ainsi
       left.studentName ! = right.studentName
est faux. Ainsi cette paire est sautée par l'adjacent_find.

Ainsi, vous ne saurez pas même de l'adjacent_find qui là étaient même deux entrées = (22, A). Ainsi, vous ne devez pas s'inquiéter d'obtenir 22 pieds : A, A, C, D depuis 22, A sera vu seulement une fois.
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us