Swedish

Står Du Inför Microsoft SQL-fel 80040e31?

Åtgärda PC-fel på några minuter

  • Steg 1: Ladda ner och installera ASR Pro
  • Steg 2: Öppna ASR Pro och klicka på knappen "Skanna"
  • Steg 3: Klicka på knappen "Återställ" för att starta återställningsprocessen
  • Denna programvara kommer att fixa din PC - ladda ner den nu för att komma igång.

    Nyligen angav vissa användare för oss att de stötte på Microsoft SQL-fel 80040e31.

    Vi arbetar faktiskt med en stor webbapplikation som byggdes i ASP och SQL 2003.

    I viss kod har vi en ny SSO-sträng för att ansluta till samlingen.

    Applikationen har fungerat bra de senaste 3 månaderna eller till och med åren, men plötsligt visas en “Timed-out”-information, som bara kraschar i olika delar av applikationen, men inte någonsin allt minne får åtkomst från data.

    Koden som utlöser det här situationsfelet kan vara lite stor, definitivt måste du hänvisa till Recs 8k-tabellen för extra villkor.

    Det tog ytterligare 1:01 enheter för att slutföra samma SQL-situation i en frågefråga.

    Vi måste se till att du avancerar MDAC, eller så måste vi transformera anslutningens timeout, eller så måste vi ändra koden idag.

    Vi kan inte byta en förfrågan, nu finns det många sätt att göra följande.

    Jag har en pålitlig databasanslutning för att verkligen kunna MS SQL Server 2012 i gammal ASP (VBScript). Här är min relaterade serverlinje:

      Provider är lika med SQL Native Client 11.0; Server är lika med localhost;Databas = databas; Uid innebär myuser; Pwd = mitt lösenord; 
      UPPDATERING [info] [stamp] = '2014-03-18 kontrakt 01:00:02',[data] = 'Det finns 12533 ​​tecken här',[registrerad] = '2014-03-18 01:00:00',[bekräftad] = 1, [ip] = 0, [läge] = iii, [rebuild] = 0,[uppdaterad] = 1, [finnbar] betyder 0WO [ID] = 193246; 
      Microsoft SQL Server Native Client 11.Fel 0 '80040e31'Begäran tog för lång tid/functions.asp, grupp 476 

    SQL-frågan anses vara ganska lång, datafältet består av även uppdaterats till 12533 ​​tecken. Eftersom ID-kolumnen är listad går det vanligtvis snabbt och mycket enkelt att hitta posten med ID 193246.

    När jag kör ditt nuvarande exakta SQL-uttryck (kopiera såväl som klistra in), kör SQL Server Management Studio det igen på några minuter. Så det finns inga större problem med SQL själv. Även om jag försökte använda ADODB.Recordset-problemet och uppdatera det via expert track record (inte självskriven SQL) men ändå uppnå samma timeout-fel.

    När jag försöker gå till Verktyg> Alternativ> Frågekörning i Management Studio ser jag att körningstiden troligen kommer att vara inställd på 0 (oändlig). I Verktyg> Alternativ> I kan designers se vilken som vanligtvis transaktionstimeout är inställd på positivt en månad i sekunder, vad som borde vara tillräckligt eftersom paketet och databasen finns på just den här datorn (“localhost” kommer att finnas i anslutningen sträng).

    Vilken utmaning får du härifrån? Varför kan jag implementera SQL i Management Studio men inte i min ASP-kod?

    Edit: Jag försökte ställa in vår egen 30 sekunders timeout på märkesfliken till 550 sekunder för att vara säker på att jag fortfarande får det huvudsakliga felet (händer förresten efter 30 sekunder kopplat till att ladda sidan från hyperlänken).

    microsoft sql error 80040e31

    Här är definitivt koden jag använder – kör ASP-sidan SQL:

      Ställ in Conn till Server.CreateObject ("ADODB.Connection")Conn.Open "Provider = SQL Server Native Client 11.0;Server = lokalvärd; databas är lika med databas; Uid = minanvändare; Pwd är lika med mitt lösenord; "Kör sedan "UPPDATERA [info] SET 01:00:02",[data] = '12533 ​​​​[stamp] =' 2014-03-18 Brev som går hit ', [sparade] =' 2014-03-18 01:00:00 ',[bekräftad] = 0, [ip] innebär 0, [läge] = 3, [rebuild] betyder 0, [uppdaterad] = 1, [finnbar] betyder 0WO [ID] = 193246; " 

    Endast redigering: Att använda Conn.CommandTimeout betyder 0 för att exekvera problemet på obestämd tid gör ingenting, det driver bara frågan att köras för alltid. Jag väntade minst 25 och produkten fungerade fortfarande.

    Sedan försökte jag bara dela upp SQL när två SQL-satser genom att uppdatera enormt långa siffror i den ena och den andra. Detta kommer inte heller att uppdatera produkten med långa filer, bara timeout.

      Drivrutin = SQL Server; Server betyder lokalvärd; Databas = databank; Uid motsvarar myuser; Pwd = mitt lösenord;Drivrutin = SQL Native Site Client 11.0; Server är lika med localhost; Databas = Databas; Uid är lika med myuser; Pwd = mitt lösenord; 

    Fungerade inte. Jag planerade till och med att tänka om datumen till 12533A för att upptäcka om några datum orsakade en persons problem. Nej, samma problem.

    Sedan upptäckte jag något intressant: jag försökte först köra hela SQL en kort tid innan jag gjorde en ganska lång uppdatering av datafältet. ÄVEN fick han så småningom ett undantag för begäran om timeout …

    Men varför bara? Har den i stort sett så få uppdateringar (hela SQL-satsen är mindre än hundra tecken). Jag kommer att fortsätta på marknaden för att söka.

    Redigera 3: Jag fungerade att det kunde ha något att göra med anslutningen, men jag kunde hitta något som såg fel ut. Jag försökte till och med ändra rapportvarianten för att använda sa-kontot, men inte desto mindre, även det fungerade inte och så vidare, jag valde fortfarande dessa “förfrågan har löpt ut” timeout.

    Det gör mig och mina kamrater galna. Ingen lösning, praktiskt taget helt enkelt lösning, och sämsta sifferidé med hänsyn till alla!

    Version 4: I Management Studio, välj Verktyg> Alternativ> Design och markera kryssrutan Spara ändringar för att förhindra nödvändighet av alkov. Det här fungerar inte.

    Jag kollade för att ändra datatypen för din “data”-kolumn i “nvarchar (MAX)” direkt till den lägre typen “ntext” (jag är desperat). Det här fungerar inte. Körs

    provade den minsta ändring jag kunde tänka på meddelandet:

      UPPDATERING [info] SET [bekräftad] betyder 0 WO [ID] = 193246; 

    Detta kommer att ställa in lägsta lewis till false. Fungerade inte. Jag provade samma reflektion som här i Management Studio och produkten lyckades bra.

    Ge mig några tips och råd om du har några, för jag har väldigt få av dem.

      Provider = SQLOLEDB.1; Lösenord motsvarar mitt lösenord; Håll SID lika med minanvändare; Initial information = sant; Användarwebbplats = databank; Datakälla är lika med localhost 

    Fungerade inte. Jag försökte precis lägga en satsning som anges på felet, utarbetat avsett ett tag.

    Redigera 6: Jag har nu försökt föreslå en helt ny annorlunda inmatning i alla tabeller:

      UPPDATERING är lika med [info] SET [bekräftat] = 0 DÄR [ID] är lika med 1; 

    Ett timeout-fel inträffade också. Så nu vet vi att dessa produkter är okvalificerade bidrag.

    Jag kommer att kunna uppdatera inlägg i andra tabeller i vår “databas” från samma databank via ASP. Jag skulle definitivt kunna förbättra tabeller i andra resurser på localhost också.

    Är det faktiskt möjligt att dela något med varje [info] jag tabell? För att använda MS Access-guiden för att flytta data som Access till MS SQL Server det nya året omedelbart, genererades meddelanden av dataklassen “ntext” och jag modifierades manuellt till “nvarchar (MAX)” medan ntext är utfasad. Kan något gå sönder? Jag var tvungen att återskapa skrivbordet varje gång jag ändrade postreproduceringen.

    microsoft sql error 80040e31

    Jag behöver sova mycket, så jag kommer definitivt att återbetala checken om någon berättar för andra om det imorgon. Vänligen gör det även om du bara har något att säga.

    Bearbetning 7: Snabb I-bearbetning framför med transportlådan. Ett försök verkade göras för att definiera leverantören som finns i formen “sqlncli11” också med tanke på att anslutningssträngen (med hjälp av dll-namnet från användaralternativen med det faktiska leverantörsnamnet). Det spelar absolut ingen roll. Anslutningen publiceras ibland, men timeout.

    Jag använder inte heller MS SQL Server 2012 Express (så vitt jag vet, tillhandahölls ingen express under installationen). Det här är det djupaste.

    Om det hjälper, utmärkt “Hjälp”> “Om …”-information, som verkligen vanligtvis tillhandahålls av Management Studio:

      Microsoft SQL Server Management Studio: 11.0.2100.60Microsoft Analysis Services Client Tools 88: .0.2100.60Microsoft Data Access Components (MDAC): 6.3.9600.16384Microsoft MSXML: 3.0 5.0 6.4Microsoft Internet Explorer: 9.11.9600.16521Microsoft .NET Framework: 4.0.30319.34011SO: 6.3.9600 


    Åtgärda PC-fel på några minuter

    Letar du efter ett kraftfullt och pålitligt PC-reparationsverktyg? Se inte längre än ASR Pro! Denna applikation kommer snabbt att upptäcka och fixa vanliga Windows-fel, skydda dig från dataförlust, skadlig programvara och maskinvarufel och optimera ditt system för maximal prestanda. Så kämpa inte med en defekt dator - ladda ner ASR Pro idag!


    Efter att ha provat några försökte jag äntligen stänga en del av förvarsanslutningen och öppna den igen vanligtvis innan jag körde SQL-satserna. Han slogs samtidigt. Vilken sort …?

    Jag hade massor av kod i en viktig subrutin, dessutom visade det sig att utanför med den var meddelandet jag försökte uppdatera redan öppet! Så, anledningen till timeouten var egentligen antingen p. Antingen slets hela byrån av på den liknande sammanfogningen som många försökte avancera. Så vår anslutning (eller CPU var en tråd) försenades och betalades till ett lås som helt aldrig kommer att låsas upp.

    Jag vill inte ha det när det blir så lätt efter att det blivit komplicerat.

    Meddelandet startade utanför en subrutin på denna ganska enkla kod:

      Set RecSet Conn = .Execute ("SELECT, etc.") 
      RecSet.CloseRecSet = ordna ingenting 

    Anledningen till att det inte slog mig vid något tillfälle var att de var tillåtna i MS Access, snarare nu gick jag direkt till MS Server SQL och det var inte så bra (eller snarare slarvigt) … Den som skapades med reset Conn.Execute () föreslog att skapa ett låst inlägg, precis som du kan se tidigare i databasen för närvarande, men mycket likt vilket ibland. Inte så rimligt att, konstigt nog, anslutningssekvensen ändrades tillsammans med det verkliga indexet.

    Den här artikeln kommer att rädda enskilda personers huvudvärk när de migrerar helt från MS Access till MS SQL Server. Även om jag inte kan föreställa mig hur nästan alla användare Access lämnar livet idag.

    Denna programvara kommer att fixa din PC - ladda ner den nu för att komma igång.