Saltar al contenido

¿Qué es “Connect Timeout” en la cadena de conexión del servidor SQL?

Solución:

Ese es el tiempo de espera para crear la conexión, NO un tiempo de espera para los comandos ejecutados sobre esa conexión.

Consulte, por ejemplo, http://www.connectionstrings.com/all-sql-server-connection-string-keywords/ (tenga en cuenta que la propiedad es “Connect Timeout” (o “Connection Timeout”), no solo “Timeout”)


De los comentarios:

No es posible establecer el tiempo de espera del comando a través de la cadena de conexión. Sin embargo, SqlCommand tiene una propiedad CommandTimeout (derivada de DbCommand) donde puede establecer un tiempo de espera (en segundos) por comando.

Tenga en cuenta que cuando recorre los resultados de la consulta con Read(), el tiempo de espera se restablece en cada lectura. El tiempo de espera es para cada solicitud de red, no para la conexión total.

Connect Timeout=30 significa, dentro de 30 segundos, el servidor sql debe establecer la conexión. de lo contrario, se cancelará la solicitud de conexión actual. Se usa para evitar el intento de conexión de esperar indefinidamente.

Tiempo de espera de conexión = 30 significa que el servidor de la base de datos tiene 30 segundos para establecer una conexión.

El tiempo de conexión expiro especifica el límite de tiempo (en segundos), dentro del cual se debe realizar la conexión al servidor especificado; de lo contrario, se lanza una excepción, es decir, especifica cuánto tiempo permitirá que su programa se mantenga en espera mientras establece una conexión a la base de datos.

DataSource=server;
InitialCatalog=database;
UserId=username;
Password=password;
Connection Timeout=30

SqlConnection.ConnectionTimeout. especifica cuántos segundos tiene el servicio SQL Server para responder a un intento de conexión. Siempre se establece como parte de la cadena de conexión.

Notas:

  • El valor se expresa en segundos, no en milisegundos.

  • El valor predeterminado es 30 segundos.

  • Un valor de 0 significa esperar indefinidamente y nunca agotar el tiempo de espera.

Además, SqlCommand.CommandTimeout especifica el valor de tiempo de espera de una consulta específica que se ejecuta en SQL Server, sin embargo, esto se establece a través del objeto / configuración SqlConnection (dependiendo de su lenguaje de programación), y no en la cadena de conexión, es decir, especifica cuánto tiempo permitirá que se mantenga su programa mientras se ejecuta el comando.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *