Pregunta

Cuando intento cambiar esta lista de columnas:

Nombre
Imagen
Descripcion
Activo
IdLineaProducto

en este (IdLineaProducto es primero)

IdLineaProducto
Nombre
Imagen
Descripcion
Activo

SQL Server Management Studio dice que no está permitido para guardar los cambios porque la tabla se debe eliminar y volver a crear (en español ...). Yo podría hacer esto en SQL Server 2005, pero no en SQL Server 2008.

Lo mismo sucede en otras situaciones, como tratar de transformar una columna de no identidad int a la identidad. ¿Por qué sucede esto? ¿Cómo puedo resolver esto? Tal vez algún problema de mal configurado? Algunos característica nueva en SQL Server?

¿Fue útil?

Solución

Me pareció que el solución a este problema .

  

Esto es por diseño y puede ser rápida   fijo en el estudio de la gerencia por   desactivando una propiedad. Para solucionar este problema en   Management Studio, vaya a Herramientas ->   Opciones y luego van al diseñador de páginas   y desactive "Impedir guardar cambios   que requieren mesa de re-creación".

Tenga en cuenta que puede tener consecuencias no deseadas , como la pérdida de datos en otras tablas relacionadas con esto.

Otros consejos

Eso es sólo la forma en que funciona ... sólo puede agregar columnas a la final, a menos que DROP y CREATE que (normalmente la copia de los datos de ida y vuelta en el que el IDE puede ayudar con). Pero ¿Por qué ¿desea cambiar el orden? Incluso si no es ideal, su SELECT etc puede manejar esto ... es decir.

SELECT IdLineaProducto, Nombre, Imagen, Descripcion, Activo
FROM   TheTable
...

(rara vez es una buena idea sólo tiene que utilizar SELECT *)


Re el IDENTITY; De nuevo, esto es fundamental para la columna - aunque en este caso se podría copiar los datos a cabo, DROP la columna y re-ADD la columna como IDENTITY (en el lado derecho), y copiar de nuevo en - pero luego se va complicaciones adicionales con IDENTITY INSERT y el valor SEED (para que no se trate de obtener duplicados de valores de identidad existentes).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top