Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Problem mit ADO-Verbindungszeitüberschreitung

Nein, es reicht aus, die ConnectionTimeout-Eigenschaft festzulegen

Ich hatte genau das Problem (D2009, MSSQL2005), aber TADOConnection.ConnectionTimeout funktioniert gut für mich (Übrigens ist der Standardwert für diese Eigenschaft 15 Sekunden). Beachten Sie, dass die Timeout-Streuung ziemlich breit ist, sobald Sie also nach 5 Sekunden und später, z. nach 10 Sekunden, aber 20 Sekunden sind wirklich zu viel für den Verbindungsversuch.

Wahrscheinlich haben Sie ein Problem mit CommandTimeout (wenn Sie versuchen, eine Abfrage mit der zugehörigen ADO-Datensatzkomponente auszuführen). Sie müssen daran denken, dass, wenn Sie TADOConnection.ConnectionTimeout :=5 setzen und in Ihrer Datensatzkomponente z. TADOQuery.CommandTimeout :=15, und Sie versuchen, eine Abfrage auszuführen, erhalten Sie nach 20 Sekunden eine Zeitüberschreitung.

Wenn Sie wirklich ein Problem mit der Abfrageausführung haben, nicht nur mit dem Verbindungsversuch, kann Ihnen dieser Beitrag helfenADO-Komponenten CommandTimeout