Avatar billede zaknafein Praktikant
16. juli 2002 - 12:53 Der er 12 kommentarer og
1 løsning

Timeout expired + open table view

Når jeg har en tabel åben i MS SQL, vil min INSERT ikke gemmen føres??


Ligeså snart jeg lukker mit vindue i MSSQL, kører ASP-siden igen?

Jeg har både prøvet at inserte vha. ADODB og også en Connection.execute(sql), så det kan ikke være noget med cursors / lock, da jeg ikke bruger ADODB normalt.
Avatar billede oswald Nybegynder
16. juli 2002 - 13:42 #1
Enten kører din MSSql som single user eller også er det et lock problem.
prøv at lave visningen af din tabel med nolock som følgende
SELECT au_lname FROM authors WITH (NOLOCK)
Avatar billede oswald Nybegynder
16. juli 2002 - 13:43 #2
Det var ment som et svar ;)
Avatar billede zaknafein Praktikant
16. juli 2002 - 14:20 #3
Det er ikke en select, men en INSERT der er problemet! Og jeg åbner ikke et recordset, jeg knalder en execute af direkter på connection.
Avatar billede zaknafein Praktikant
16. juli 2002 - 14:22 #4
Når jeg siger der er insert der kun er problemet mener jeg at jeg gerne skulle ende op med at lave en INSERT.  Men den viser heller ikke noget på en select statement!  Den er simpelthen låst.
Avatar billede oswald Nybegynder
16. juli 2002 - 14:39 #5
Så tror jeg ikke jeg forstår problemet.

Sådan som jeg forstår problemet så er det at når du har åbnet tabellen i enterprise manageren ved at klikke på "return alle rows" og du samtidigt prøver at lave en insert i samme tabel så feljer insert kommandoen.
Avatar billede zaknafein Praktikant
16. juli 2002 - 16:22 #6
Ja lige præcist...
Den fejler også hvis jeg laver en select.
Avatar billede oswald Nybegynder
17. juli 2002 - 09:14 #7
Når du har en tabel åben i enterprise manageren kører du faktisk en Select og det kan være den der låser. Hvis du inde i din tabel visning klikker knappen SQL får du et panel hvor der står noget i stilen med 'select * from Tabel', prøv at erstat det med 'select * from Tabel WITH (NOLOCK)'. Så kan det være det virker.
Avatar billede tmceu Praktikant
21. juli 2002 - 11:20 #8
Prøv at åbne en ekstra session af Enterprise Manager og kig under Management -> Current Activity -> Locks/Object + Locks/Process ID

Kig under lock typen. Jeg har aldrig oplevet dette problem, men ovenstående bør vise hvad/hvordan der er låst.
Avatar billede zaknafein Praktikant
22. juli 2002 - 08:40 #9
hmm jeg kører kun enterprice managaer client? Mon dt er derfor jeg ikke fandt det?
Avatar billede oswald Nybegynder
22. juli 2002 - 08:43 #10
Øhhhh ikke forstået. Kører du SQL serveren og Enterprice manageren (Der er kun den samme ;)) på samme maskine eller på forskellige? og hvilken version af SQL serveren kører du?
Avatar billede zaknafein Praktikant
24. juli 2002 - 14:13 #11
SQL-server 2000.
Avatar billede oswald Nybegynder
24. juli 2002 - 14:24 #12
OK jeg skulle bare lige sikre mig at du ikke kørte en meget gammel version ;). Jeg har været inde og tjekke og jeg kan godt reproducerer dit problem.
Når en tabel er åben i enterprice manageren er den låst hvilket medfører dit problem. Den nemmeste løsning er at lade være med at ha tabellen åben ;). Alternativt kan du komme uden om det ved at ændre den Select sætninge som Enterprice manageren udfører.
Du gør følgende
- Inde i din tabel visning klikke du på Knappen [SQL].
- Der kommer en sætning frem som er noget i stilen med 'SELECT * FROM authors'
- Du ændre sætningen til 'SELECT au_lname FROM authors WITH (NOLOCK)'
- Kør forspørgslen igen ved at trykke på knappen [!]
Avatar billede zaknafein Praktikant
24. juli 2002 - 14:28 #13
Ok tak :)
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