Estoy tratando de agregar una columna a una tabla con muchos datos en SQL Server 2005, usando SSMS.
Así que busco en la tabla, selecciono Modificar y agrego la nueva columna. Luego, cuando presiono Guardar, aparece la siguiente advertencia:
Guardar los cambios de definición en las tablas con grandes cantidades de datos podría llevar una cantidad considerable de tiempo. Mientras se guardan los cambios, los datos de la tabla no serán accesibles
Estoy de acuerdo con eso, el DB está desconectado y tengo todo el tiempo del mundo, así que presiono Sí.
Sin embargo, la operación luego se agota después de aproximadamente 30 segundos con este mensaje:
No se puede modificar la tabla. Tiempo agotado. El tiempo de espera transcurrido antes de la finalización de la operación o el servidor no responde.
Luego, cuando presiono OK:
Usuario cancelado fuera del cuadro de diálogo guardar (Herramientas de base de datos de MS Visual)
No entiendo eso. He establecido el tiempo de espera de ejecución en 0 (infinito) tanto en el cuadro de diálogo de conexión SSMS como en Herramientas -> Opciones -> Ejecución de consulta -> SQL Server. ¿Cuál es el punto de establecer un tiempo de espera de ejecución si simplemente se ignora?
¿Alguien sabe qué valor de tiempo de espera se utiliza aquí y cómo puedo configurarlo?
fuente
SSMS no debe usarse para modificaciones de datos generales. Póngase cómodo con T-SQL y agregue la columna como se sugiere a continuación.
ALTER TABLE TableName ADD NewColumn INT
SSMS en realidad está creando una nueva tabla con todas las columnas, importando datos a la nueva tabla y descartando la tabla anterior. Incluso si tiene todo el tiempo del mundo, si hay una manera eficiente de hacer las cosas, debe usar el método correcto. Para evitar este desastre, en SQL Server 2008 no se permitirá el método GUI IIRC.
fuente