Sintomi

Quando si tenta di connettersi a un database utilizzando l'oggetto SqlConnection in Microsoft ADO.NET 2.0, può essere segnalato un errore di connessione, anche se il server database sia effettivamente disponibile. Questo problema è particolarmente evidente quando le seguenti condizioni sono vere:

  • Il server di database è stato disponibile per almeno un minuto.

  • L'applicazione client ha tentato di connettersi al server di database durante tale periodo.

Causa

Questo problema si verifica a causa di comportamento che si verifica quando non riescono i precedenti tentativi di connessione al server che esegue Microsoft SQL Server. Il pool di connessione SqlClient internamente può limitare il numero di nuovi tentativi di connessione al server. Questo processo deve verificarsi per un breve periodo di tempo. Durante questo periodo, il pool di connessioni report automaticamente sull'ultimo errore invece di effettuare una connessione Cerca nel server. Dopo la scadenza del periodo di tempo, la successiva richiesta di connessione dall'applicazione client raggiunge una vera connessione al server che esegue SQL Server. Nota: In alcuni casi, il periodo di tempo può diventare molto grande. Questo problema dipenderà quanto tempo il server di database è disponibile.

Risoluzione

Per risolvere questo problema, scaricare il file appropriato per il computer:

Per un computer basato su x86

Il seguente file è disponibile per il download da Microsoft Download Center:http://download.microsoft.com/download/2/C/5/2C5BCDC9-3241-443A-9F96-4E0B0EDFA727/NDP20-KB916002-x86.exe

Per un computer basato su x64

Il seguente file è disponibile per il download da Microsoft Download Center:http://download.microsoft.com/download/D/3/9/D39C79DF-4158-45DF-9031-92C52AB0ED19/NDP20-KB916002-x64.exe

Per un computer basati su Itanium

Il seguente file è disponibile per il download da Microsoft Download Center: http://download.microsoft.com/download/0/0/3/00392DD3-5B4F-4D99-94E8-6827B8F8D7EF/NDP20-KB916002-IA64.exe Per ulteriori informazioni su come scaricare i file di supporto Microsoft, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:

119591 Come ottenere file di supporto Microsoft dai servizi onlineMicrosoft ha analizzato questo file per individuare eventuali virus. Microsoft ha utilizzato il software antivirus più recente disponibile alla data in cui il file è stato registrato. Il file è archiviato in un server con protezione avanzata che impedisce modifiche non autorizzate al file.

Soluzione alternativa

Per risolvere questo problema, utilizzare i metodi ClearPool o ClearAllPools dell'oggetto SqlConnection per reimpostare il pool di connessioni.

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Ulteriori informazioni

Dopo avere applicato questo hotfix, un lieve ritardo può ancora verificarsi prima che l'applicazione client può connettersi al server di database quando il server di database consente di recuperare da un'interruzione. In genere, questo ritardo non dovrebbe durare più di 60 secondi, indipendentemente dal tempo di SQL Server sia stata precedentemente disponibile. Per ulteriori informazioni, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:

824684 Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software MicrosoftPer ulteriori informazioni sulla classe SqlConnection , visitare il seguente sito Web Microsoft Developer Network (MSDN):

http://msdn2.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection(VS.80).aspxQuesto hotfix è incluso nel pacchetto di hotfix stesso come l'hotfix nell'articolo della Microsoft Knowledge Base seguente:

912151 FIX: la connessione potrebbe scadere prima di provare a connettersi al server partner di failover quando si tenta di connettersi a un database con mirroring di SQL Server 2005 utilizzando un'applicazione basata su ADO.NET 2.0

912731 FIX: applicazioni ADO.NET an quando utilizza lo spazio dei nomi System.Data.SqlClient, l'applicazione potrebbe verificarsi utilizzo elevato della CPU e potrebbe bloccarsi

912732 FIX: potrebbe verificarsi un errore quando si avvia una nuova transazione in ADO.NET 2.0 su una connessione aperta a un database di SQL Server 2005

913177 FIX: si potrebbe ricevere un messaggio di errore quando un'applicazione ADO.NET connessa utilizza la classe SqlBulkCopy

913764 FIX: messaggio di errore quando si tenta di eseguire una query UNION ALL o di chiamare il metodo DeriveParameters: "Errore irreversibile di connessione interno"

913765 FIX: SqlException un'eccezione può verificarsi quando si chiama uno dei metodi Execute sull'istanza della classe SqlCommand in un'applicazione di ADO.NET 2.0

913766 FIX: DateTime di una colonna che non contiene tutti i dati in modo errato è rappresentato da un campo DateTime. MinValue quando un oggetto DataSet di.NET Framework 2.0 viene deserializzato in un computer client

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.