nombre de column

15/10/2008 - 20:01 por Luis Mata | Informe spam
hola como puedo saber si una columan existe en una tabla.

Luis

Preguntas similare

Leer las respuestas

#1 Carlos M. Calvelo
15/10/2008 - 20:29 | Informe spam
Hola Luis,

On 15 okt, 20:01, "Luis Mata"
wrote:
hola como puedo saber si una columan existe en una tabla.

Luis



Si esta consulta tiene resultado (exists(...)) entonces
existe

select *
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME='TuTabla' AND
COLUMN_NAME='TuColumna'

Saludos,
Carlos
Respuesta Responder a este mensaje
#2 Juan Diego Bueno
15/10/2008 - 21:07 | Informe spam
Hola Carlos:

"Carlos M. Calvelo" escribió en el mensaje de
noticias:
Hola Luis,

On 15 okt, 20:01, "Luis Mata"
wrote:
hola como puedo saber si una columan existe en una tabla.

Luis



Si esta consulta tiene resultado (exists(...)) entonces
existe

select *
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME='TuTabla' AND
COLUMN_NAME='TuColumna'



Hace no mucho se debatió por aquí la mejor opción en cuestión de
rendimiento. Sería algo similar a esto:

IF EXISTS (SELECT TOP 1 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME='TuTabla' AND COLUMN_NAME='TuColumna')

Un saludo
Respuesta Responder a este mensaje
#3 Carlos M. Calvelo
15/10/2008 - 21:20 | Informe spam
Hola Diego,


Hace no mucho se debatió por aquí la mejor opción en cuestión de
rendimiento. Sería algo similar a esto:

IF EXISTS (SELECT TOP 1 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME='TuTabla' AND COLUMN_NAME='TuColumna')




Entiendo. Pero será TOP 1 :-) (o TOP 0 o TOP 4) :-)

Saludetes,
Carlos
Respuesta Responder a este mensaje
#4 Carlos M. Calvelo
15/10/2008 - 21:31 | Informe spam
Hola otra vez,

On 15 okt, 21:07, "Juan Diego Bueno"
wrote:
Hace no mucho se debatió por aquí la mejor opción en cuestión de
rendimiento. Sería algo similar a esto:

IF EXISTS (SELECT TOP 1 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME='TuTabla' AND COLUMN_NAME='TuColumna')




Además el optimizador debería darse cuenta de que no importa
lo que pongas en la clausula select dentro de un exists y no
debería evaluar esas expresiones. Pero bueno...

Saludetes otra vez,
Carlos
Respuesta Responder a este mensaje
#5 Alejandro Mesa
15/10/2008 - 21:37 | Informe spam
Juan Diego Bueno,

Vale tu comentario, pero como fue que lo probaron?

Por otra parte, pudieramos usar tambien la funcion columnproperty, la cual
devolvera NULL si la columna no existe. Claro esta, el nombre de la tabla,
asi como el de la propiedad usada debe existir.

if columnproperty(object_id('dbo.mi_tabla', 'AllowsNull')) is null
print 'columna no existe'
else
print 'columna si existe'


AMB

"Juan Diego Bueno" wrote:

Hola Carlos:

"Carlos M. Calvelo" escribió en el mensaje de
noticias:
> Hola Luis,
>
> On 15 okt, 20:01, "Luis Mata"
> wrote:
>> hola como puedo saber si una columan existe en una tabla.
>>
>> Luis
>
> Si esta consulta tiene resultado (exists(...)) entonces
> existe
>
> select *
> from INFORMATION_SCHEMA.COLUMNS
> where TABLE_NAME='TuTabla' AND
> COLUMN_NAME='TuColumna'

Hace no mucho se debatió por aquí la mejor opción en cuestión de
rendimiento. Sería algo similar a esto:

IF EXISTS (SELECT TOP 1 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME='TuTabla' AND COLUMN_NAME='TuColumna')

Un saludo


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida