Saber si una tabla tiene un campo

12/02/2005 - 12:49 por Alonso | Informe spam
Tengo que hacer un proceso desde la aplicacion para recorrer todas las
tablas y agregar un campo especifico a cada una (alter table ... add) ..
El problema es que algunas tablas ya tienen el campo y debo ignorarlas en el
recorrido.

Como puedo detectar si ya una tabla tiene el campo para no hacer el alter
table ?

Preguntas similare

Leer las respuestas

#1 MAXI
12/02/2005 - 14:29 | Informe spam
Hola, una forma

==USE NORTHWIND
GO

IF EXISTS (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME='CUSTOMERS' AND COLUMN_NAME='ADDRESS')
BEGIN
PRINT ' EXISTE'
END
ELSE
BEGIN
PRINT 'NO EXISTE'
END
==
Suerte





Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)

MSN:
"Alonso" escribió en el mensaje
news:
Tengo que hacer un proceso desde la aplicacion para recorrer todas las
tablas y agregar un campo especifico a cada una (alter table ... add) ..
El problema es que algunas tablas ya tienen el campo y debo ignorarlas en
el
recorrido.

Como puedo detectar si ya una tabla tiene el campo para no hacer el alter
table ?


Respuesta Responder a este mensaje
#2 Alejandro Mesa
12/02/2005 - 20:37 | Informe spam
Alonso,

Tambien puedes usar la funcion COLUMNPROPERTY para preguntar por alguna
propiedad de esa columna, esta funcion devuelve 0 o 1, asi que si el valor
que devuelve es NULL es porque la columna no existe.

Ejemplo:

use northwind
go

select columnproperty(object_id('dbo.orders'), 'orderid', 'AllowsNull')
go

if columnproperty(object_id('dbo.orders'), 'columna_en_question',
'AllowsNull') is null
print 'no existe'
else
'print existe'
go


AMB

"Alonso" wrote:

Tengo que hacer un proceso desde la aplicacion para recorrer todas las
tablas y agregar un campo especifico a cada una (alter table ... add) ..
El problema es que algunas tablas ya tienen el campo y debo ignorarlas en el
recorrido.

Como puedo detectar si ya una tabla tiene el campo para no hacer el alter
table ?



Respuesta Responder a este mensaje
#3 Alonso
12/02/2005 - 20:52 | Informe spam
Gracias por su gran ayuda


"Alonso" wrote in message
news:
Tengo que hacer un proceso desde la aplicacion para recorrer todas las
tablas y agregar un campo especifico a cada una (alter table ... add) ..
El problema es que algunas tablas ya tienen el campo y debo ignorarlas en


el
recorrido.

Como puedo detectar si ya una tabla tiene el campo para no hacer el alter
table ?


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida