Avatar billede nolle_k Nybegynder
05. november 2001 - 14:40 Der er 6 kommentarer og
1 løsning

Transactions styrring via ADO

Jeg har følgende problem!

Jeg opretter en forbindelse til SQL server via ADO! Jeg laver en BeginTrans med ReadUncommited som isolation level!

Inden jeg laver en CommitTrans på denne forbindelse skal jeg skrive ned i DB\'en! Nogle andre tabeller!!

HVordan undgår jeg at den anden forbindelse låser funldstændig når jeg påøver at skrive ned i DB\'en???

/Nolle_K
Avatar billede terry Ekspert
05. november 2001 - 15:00 #1
Nolle_k> can we see the code you rhaving problems with?
Avatar billede tmceu Praktikant
05. november 2001 - 15:26 #2
Det kan du ikke. En transaktion omhandler alt der foregår mellem Begin og Commit/Rollback. En mulig work-around kunne dog være at implementere savepoints med SAVE TRANSACTION, men jeg er ikke sikker på det er nok. Alternativt kunne du indføre flere, mindre transaktioner men det kræver potentielt noget manuel oprydning ved en rollback.
Avatar billede nolle_k Nybegynder
05. november 2001 - 15:29 #3
Jeg tror simpelthen ikke på det! Hvad nytte har det så at sætte IsolationLevel???
Avatar billede tmceu Praktikant
05. november 2001 - 15:57 #4
Ville det være første gang du har oplevet noget der ikke virker som beskrevet, for så er du en af de få :-) Replikering på SQL Server skal også forestille at være fejl fri, men jeg har nu oplevet noget andet.

Jeg kan ikke \"bevise\" at min påstand holder, men den er baseret på egne erfaringer og derudover har jeg set den samme påstand flere gange i div. newsgroups.
Avatar billede nolle_k Nybegynder
05. november 2001 - 16:00 #5
Det vil sige at du mener at det burde kunne lade sige gøre men af en eller anden årsag er det ikke muligt!!! Det er jo en anden sludder! Det var ikke det du skrev!

Jeg kan sagtens forestille mig at det er tilfældet men jeg giver aldrig så let op! Der må være en udvej!

Avatar billede tmceu Praktikant
05. november 2001 - 16:26 #6
Nej, det jeg skrev (eller det jeg mente) var, at min erfaring viser at alt mellem begin og commit/rollback er omfattet af transaktionen og er dermed låst. Jeg har aldrig haft held med at bruge isolation levels (og dermed ja, det burde virke, men jeg mener ikke det gør).

En af de sjove ting er, at der flere gange i div. performance optimerings anbefalinger står at man skal undgå transaktioner, og især lange transaktioner, netop p.g.a. låse - og jeg har vel at mærke aldrig set en lille sidebemærkning med \"du kan forresten undgå låse ved at vælge et andet isolation level).

Ovenstående sammenholdt med de indlæg jeg har set gentagne gange i div. newsgroups har fået mig til at konkludere at det ikke virker. Men jeg håber da at du får det modbevist.
Avatar billede nolle_k Nybegynder
03. juni 2002 - 12:14 #7
Lukker!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester