09. december 2008 - 14:27Der er
10 kommentarer og 1 løsning
Øgning af timeout ved SQL kald fra en webside
Jeg har en forespørgsel fra en webside mod en SQL Servertabel, men den går i timeout efter defaulttiden på 30 sekunder. Via andre indlæg har jeg set, at man bør kunne øge timeout som følger:
Dim Cmd As Data.SqlClient.SqlCommand = New Data.SqlClient.SqlCommand(Sql, Conn) Cmd.CommandTimeout = 120 Return Cmd.ExecuteReader()
men når jeg måler tiden til timeout herefter, er den stadig 30 sekunder?
arne_v: Det er en langhåret SQL på 11 store SAP tabeller. Der er lagt indexer på tabellerne, men alligevel når den det ikke indenfor 30 sekunder. Lige i netop dette tilfælde gør det ikke spor, at der skal ventes i mere end 30 sekunder (men ellers giver jeg dig selvfølgelig helt ret i betragtningen!).
aaberg_cc -> jeg har læst på nettet, at 'context connection' pr. default er sat til true og dette kunne måske være grunden til, at timeout ikke kan ændres? Spørgsmålet er så: hvordan sætter man aktivt 'context connection' til false?
"context connection=true" betyder at forbinde til sig selv. Det bliver hovedsageligt brugt fra .NET stored procedures. Hvis dit databasekald er fra websiden til serveren, er det ikke det der er problemet. Jeg har desværre ikke lige nogen fornemmelse af, hvad dit problem er!?
Der står: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.Object reference not set to an instance of an object.
Det har du da bare helt ret i! Jeg har en generel rutine, der har en DataReader og adapter mulighed og jeg kan se af mine kommenteringer, at jeg har TROET, at jeg til problemforespørgslen brugte readeren, men i virkeligheden brugte jeg adapteren. Beklager forvirringen!
Synes godt om
Ny brugerNybegynder
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.