Avatar billede Slettet bruger
04. august 2006 - 10:03 Der er 6 kommentarer og
3 løsninger

could not update currently locked

Hej,

Jeg arbejder i VBA i Excel.

Jeg får denne fejl:
Run-time error '-2147467259 (80004005)':
Could not update; currently locked.

Min query ser således ud.

UPDATE [testing] SET [status] = 'Done',[Done by] = NOW(),[Last updated] = NOW() WHERE [id] = 11826

Default recording locking er No Locks

Jeg arbejder i flerbrugersystem og fejlen opstår kun nogle gange.

Jeg bruger ikke transaction overhovedet.

Mit spørgsmål: Hvorfor opstår fejlen og hvordan løser jeg det?

/1.
Avatar billede fynbohans Nybegynder
04. august 2006 - 13:30 #1
Der kan være mange årsager til den fejl! Prøv at søge på internettet efter
"8004005 access" og du vil få utallige hits. Se om der er noget du kan bruge der.
Der er bl.en god side fra Microsoft om de forskellige fejlkilder.
Avatar billede Slettet bruger
04. august 2006 - 15:24 #2
Jeg har indtil videre ikke haft held med at finde noget..

Kan det passe at acces _altid_ låser en page når der opdateres? hvordan laves en workaround til dette?

/1.
Avatar billede fynbohans Nybegynder
04. august 2006 - 16:05 #3
Så godt du skrev Excel i spørgsmål. Har aldrig selv brugt VBA i Excel, og det gør åbenbart en forskel! Hvis du søger med Excel i stedet for Access finder du bl.a. denne
Micosoft-side: http://support.microsoft.com/kb/195951/

Om du kan bruge det ved jeg ikke, ellers må du prøve et af de andre hits
Avatar billede Slettet bruger
06. august 2006 - 10:49 #4
Mine scripts kører på VBA Excel platform og databasen er access.

Jeg tror fejlen har noget at gøre med nogle settings for min connection til databasen eller i databasen selv..
Avatar billede fynbohans Nybegynder
06. august 2006 - 12:08 #5
Her her vist svaret på dine spørgsmål:
http://www.thescripts.com/forum/thread190244.html
Avatar billede Slettet bruger
06. august 2006 - 13:38 #6
Jeg har muligvis fundet svaret - Open databases using record-level locking skal sættes til false - http://www.microsoft.com/technet/prodtechnol/office/office2000/proddocs/opg/part3/ch16.mspx

Jeg uddeler points når jeg lige har testet det.

Tak for din tid indtil videre - håber jeg har fået løst det nu..
Avatar billede Slettet bruger
15. august 2006 - 10:54 #7
Jeg fandt ud af at record-level locking = false => page-level locking = true - hvilket vel egentlig får fejlmeddelelsen til at vises oftere.

Jeg har derimod måske fundet en anden løsning - skal bare lige have oversat hvad de forskellige properties betyder. Hvad er det originale recordset? - og hvad hvis der ikke er et originalt recordset - hvad vil locktype så være?

adLockUnspecified -1 Unspecified type of lock. Clones inherits lock type from the original Recordset.

adLockOptimistic 3 Indicates optimistic locking, record by record. The provider uses optimistic locking, locking records only when you call the Update method.

Jeg har kunnet genskabe fejlen konsekvent i én excel session, men kan ikke genskabe den igen - der lod det til at adLockUnspecified <> adLockOptimistic, da jeg med adLockOptimistic ikke fik fejlen.

Jeg vil ikke adde parameteren til alle mine recordset-open methods hvis jeg ikke er sikker på at undgå fejlen - så mangler egentlig bare at få en forklaring på adLockUnspecified.

Vh Mathias.
Avatar billede Slettet bruger
16. august 2006 - 13:52 #8
Jeg får alligevel fejlen hvis locking bliver sat til pessimistic :(
Avatar billede Slettet bruger
17. august 2006 - 00:18 #9
Jeg lukker da jeg har oprettet et andet spm i håb om at nogle flere vil kikke forbi med et løsningsforslag.
http://www.eksperten.dk/spm/726651
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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