Una vez creada una nueva tabla en una base de datos en SQL Server 2008 o SQL Server 2008 R2, si utilizas en SQL Server Management Studio, cuando intentas modificarla con algún cambio importante (como añadir o quitar un campo, por ejemplo), seguramente te encontrarás con este mensaje de advertencia:

Unable to modify table - No se ha podido modificar la tabla

Lo que te está indicando es que no se han podido grabar los cambios en la tabla, y que los únicos campos permitidos son los que pueden contener nulos o tienen un valor por defecto (en este caso concreto).

Además, la única opción que te da es la de aceptar, por lo que al hacerlo se te muestra otro mensaje de advertencia diciéndote que has cancelado el grabar los cambios (qué simpáticos: no te quedaba más opción que hacerlo):

User canceled out of save dialog - El usuario ha cancelado el guardado

¿A qué es debido esto?: El motivo es que el SQL Server Management Studio que viene con SQL Server 2008 trae activada una opción por defecto que impide cualquier cambio sobre las tablas que implique el tener que regenerarlas (es decir, que implique eliminar la tabla, crearla de nuevo y volver a rellenarla). Toda operación que implique eso está prohibida.

Esta medida está muy bien en entornos de producción, en los que podemos meter la pata fácilmente haciendo cambios, pero en nuestro equipo de desarrollo tenerlo activado es un sinsentido.

Para solucionarlo vete al menú “Herramientas/Opciones” y en el diálogo que aparece desmarca la opción indicada a continuación dentro de la pestaña “Diseñadores”:

Prevent saving changes that require table re-creation

¡Listo! Ahora cierra los diálogos que tuvieras abiertos y vuelve a intentarlo. Verás que funciona sin problema.

¡Espero que te sea útil!

💪🏻 ¿Este post te ha ayudado?, ¿has aprendido algo nuevo?
Pues NO te pido que me invites a un café... Te pido algo más fácil y mucho mejor

Escrito por un humano, no por una IA