Para comprobar si existe una columna en SQL Server, se puede hacer mediante una sencilla consulta en la base de datos. Esto puede servir, por ejemplo, para comprobar en un script si la columna que queremos añadir ya existía antes, lo que viene bien para blindar scripts que pueden ser ejecutados más de una vez sin que dé error.
La consulta sería la siguiente:
select * FROM INFORMATION_SCHEMA.COLUMNS AS c1 where c1.column_name = 'nombre_columna' and c1.table_name = 'nombre_tabla'
Si no se filtrara por el nombre de la columna, se podría utilizar también para comprobar si existe una tabla.
Hay que tener en cuenta que aquí estamos comprobando si existe un campo, pero no consiste en validar si existe un registro en SQL Server. Con el resultado de esta query, podríamos añadir un campo a la tabla, tras haber comprobado si existe.
El nombre del campo y columna se pueden utilizar dentro de una variable? para poder utilizar la misma consulta para tablas y campos diferentes?
gracias
Sí, claro. Igual que en cualquier query de SQL Server.
Saludos!