Avatar billede jytte Nybegynder
14. december 2006 - 10:04 Der er 4 kommentarer og
1 løsning

update der timer out

Jeg har en update på en række der skal opdatere to felter.
Problemet er bare at enterprise-manageren tilsyneladende går i løkke på update-sætningen -- den tager i hvert fald meget meget længe om det så jeg afbryder den hver gang.

Det er også mærkeligt at på en tidligere udgave af databasen (lidt færre rækker i tabellerne) gik updatesætningen ikke i stå.

Mit spørgsmål er nu om en tabel eller en række kan være i en låst tilstand (der er nemlig andre end mig der bruger database, men kun til udtræk). Og hvis det er tilfældet hvordan får man så tabeller/rækkerne til ikke længere at være låst ?
Avatar billede ramad Praktikant
14. december 2006 - 10:14 #1
Normalt vil du kunne se om der er en Lock timeout ved at bruge følgende:

SELECT @@LOCK_TIMEOUT AS [Lock Timeout];
GO

Hvis den returnere -1 så vil den vente indtil at en blokerende aktivitet er stoppet. Returnerer den andet end -1, så vil det være tiden i milisekunder som den venter før den laver en timeout.
Avatar billede ramad Praktikant
14. december 2006 - 10:24 #2
Du kan også læse lidt om forskellige årsager til locks her:

http://www.sql-server-performance.com/reducing_locks.asp
Avatar billede jytte Nybegynder
14. december 2006 - 10:52 #3
Jeg tror jeg selv har opklaret problemet.

Jeg have en select-sætning med flere joins. Den løb jeg igennem i en while-sætning hvori jeg indimellem lavede en update på en af de tabeller der indgik i den første select-sætning. Når databasen får en vis størrelse kan dette åbentbart betyde at select-sætningen kan låse den række som jeg tilfældigvis gerne vil lave en update på.

Nu går jeg over til at hente resultatet over i en arraylist førend jeg gennemløber den -- så skulle jeg vist være ude over at komme til at låsen for mig selv
Avatar billede jytte Nybegynder
14. december 2006 - 10:53 #4
Men tak for de gode råd alligevel og smid et svar hvis I vil have point
Avatar billede jytte Nybegynder
29. oktober 2007 - 15:35 #5
Håber ikke det gør noget at jeg tager poinene tilbage
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
Computerworld tilbyder specialiserede kurser i database-management

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