¿Cómo resolver el código de error 1060 en SQL Server? (Paso a paso)

Publicado: 2025-08-07

Si está trabajando en SQL Server y vea un error que dice algo como:
"Error 1060: nombre de columna duplicada" No se asuste. Parece serio, pero es un error común.

Esto generalmente aparece cuando intentas cambiar una tabla agregando una nueva columna, pero el nombre de la columna ya existe. Tal vez no te diste cuenta de que estaba allí. Quizás el guión funcionó dos veces. De cualquier manera, SQL Server solo te hace saber: "Oye, esta columna ya existe, no puedo agregarla de nuevo".

Vamos a desglosarlo de manera simple para que pueda arreglarlo rápidamente y evitarlo más tarde.

¿Qué significa el código de error de SQL Server 1060?

¿Qué significa el código de error de SQL Server 1060?

Error 1060 significa que SQL Server le está bloqueando para agregar una columna con un nombre que ya está en la tabla.

Se llama error de "nombre de columna duplicada" . Digamos que su tabla ya tiene una columna llamada user_email . Si intenta agregar otra columna con el mismo nombre usando ALTER TABLE , SQL Server lanza el error 1060 para detener la duplicación.

No es un error. Es solo la forma en que SQL protege la estructura de su base de datos.

Razones comunes por las cuales SQL Server muestra el código de error 1060

Este error generalmente aparece cuando trabaja en el diseño de la tabla o ejecutando scripts. No importa si lo está haciendo en SQL Server Management Studio (SSMS) o en un archivo de script, se trata de cómo se escribe el comando.

Aquí hay situaciones cotidianas donde aparece el error 1060:

  • Intentas agregar una columna que ya existe
  • Ejecuta el mismo script dos veces sin verificar la columna
  • Copia un script de otro desarrollador que agrega un campo duplicado
  • Estás restaurando una base de datos y ejecutando actualizaciones que conflictos
  • Está utilizando herramientas de automatización que aplican el mismo cambio de esquema más de una vez
  • Estás editando tablas grandes y perdiendo la pista de los nombres de la columna
  • Estás migrando una aplicación antigua e intentando sincronizar nuevas columnas

Es fácil encontrarlo, especialmente en proyectos compartidos o cambios significativos en el esquema.

¿Cómo solucionar el código de error de SQL Server 1060?

Este error parece aterrador al principio, pero generalmente es muy fácil de solucionar. Solo intentas agregar una columna que ya existe en la tabla. Entonces, la clave es evitar la duplicación o manejarla de manera segura .

Prueba estas correcciones una por una. La mayoría de las veces, Fix #1 o Fix #2 lo resolverá de inmediato.

FIJO #1: Verifique si la columna ya existe

Antes de intentar agregar una nueva columna, primero verifique la tabla para ver si esa columna ya está allí.

Puede usar esta consulta SQL:

SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'your_table_name'

Esto mostrará todas las columnas dentro de la tabla. Si la columna que intenta agregar ya está en la lista, ese es su problema. No necesita agregarlo nuevamente: elimine esa parte de su script. Este es el primer paso más seguro.

FIJO #2: Use IF NOT EXISTS en su declaración alter

SQL Server no permite la lógica exacta IF NOT EXISTS dentro de ALTER TABLE directamente, pero puede envolver su comando alter dentro de un bloque IF como este:

IF NOT EXISTS (
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'your_table_name'
AND COLUMN_NAME = 'your_column_name'
)
BEGIN
ALTER TABLE your_table_name
ADD your_column_name VARCHAR(255)
END

Esto se verifica primero. Si la columna no está allí, la agrega. Si ya está allí, omite el comando, sin error. Esta es la mejor solución para la mayoría de los scripts que podrían ejecutarse más de una vez.

FIJO #3: Revise y limpie sus scripts SQL

A veces, el problema no está en su código, es en cuántas veces se ejecuta el código. Si está trabajando con scripts SQL largos o archivos de migración, verifique los comandos ALTER TABLE repetidos. Tal vez la misma columna se agrega más de una vez por accidente.

Además, si copió parte de un script de otra fuente, verifique que no contenga comandos duplicados para la misma tabla. Este paso de limpieza es particularmente útil al administrar múltiples cambios.

FIJO #4: Cambiar el nombre o solte la columna duplicada (si es necesario)

Si la columna ya existe pero ya no es necesaria o tiene el nombre incorrecto, es posible que desee soltarla o cambiarla antes de agregar una nueva.

Para soltar una columna:

ALTER TABLE your_table_name
DROP COLUMN your_column_name

Para cambiar el nombre de una columna (SQL Server 2016+):

EXEC sp_rename 'your_table_name.old_column_name', 'new_column_name', 'COLUMN'

ADVERTENCIA: La caída o el cambio de nombre de las columnas pueden romper su aplicación si la columna se usa en otro lugar. Solo use esto si está seguro de que la columna es segura para eliminar o cambiar.

FIJO #5: Use SQL Server Management Studio (SSMS) para verificar el esquema

A veces, ayuda a ver las cosas visualmente. Abra SSMS, conéctese a su base de datos y expanda la tabla. Verá todos los nombres de la columna enumerados. Esto hace que sea más fácil detectar si la columna ya está allí o se agregó con una ortografía diferente.

Una vez confirmado, puede volver a su script y editar o omitir de forma segura esa columna. SSMS es ideal para verificar dos veces antes de hacer cambios, especialmente si no está seguro.

Las mejores prácticas para evitar el código de error de SQL Server 1060

Este error es estándar, pero también es fácil de evitar una vez que sepa cómo manejarlo. Aquí hay algunos consejos que pueden evitar que vuelva a golpearlo en el futuro:

  • Siempre verifique si la columna ya existe antes de agregarla
  • Use IF NOT EXISTS la lógica en sus scripts (cuando se admite)
  • Pegarse en nombres de columnas transparentes y consistentes
  • No ejecute la misma tabla alter más de una vez a menos que sea necesario
  • Mantenga un registro de cambios de esquema en un registro de cambios o control de versiones
  • Pruebe nuevos scripts en una base de datos de puesta en escena antes de ir en vivo
  • Use herramientas como SSMS para verificar visualmente las columnas de la mesa
  • Evite la copia de SQL sin saber qué hace

Estos pequeños hábitos pueden ayudarlo a escribir scripts más limpios y evitar problemas como el error 1060.

Conclusión

El error del servidor SQL 1060 puede parecer confuso, pero simplemente significa que intentó agregar una columna que ya existe. SQL solo está haciendo su trabajo para proteger la estructura de su mesa.

La solución suele ser simple: verifique su lista de columnas, ajuste el script o agregue una condición para evitar duplicados. Una vez que comprende qué lo causó, es fácil evitar en el futuro.

Este tipo de error es típico en el trabajo de SQL. Cuanto más practique y pruebe sus scripts, más fácil será.