Hola a todos:
Necesito una ayuda, como puedo detectar si existe o no un campo en una BD mysql ?
Lo que pasa es que tengo una funcion que imprime, y debo saber con anterioridad,
si ya existe un campo, para poder imprimir sus datos, pero tengo sistemas antiguos,
donde no tengo la certeza, si existen ya _ y el modulo de impresion, se
cae o no imprime nada.
He utilizado esta forma, pero no se si es la correcta o existe algo mejor, ahi
requiero la ayuda.
If oRs:Fieldpos( 'direccion' ) <> 0
? 'imprimo el dato'
EndIf
Tambien probe con
If FieldPos( oRs:direccion ) <> 0
EndIf
Pero no me reconoce el campo.
Utilizo TDolphin con mysql y harbour 3.2
Saludos,
Detectar si existe campo en tabla MySQL
Re: Detectar si existe campo en tabla MySQL
SHOW COLUMNS FROM clientes where field like "%codigo%";
Re: Detectar si existe campo en tabla MySQL
Gracias por responder, pero no me sirve tu idea, a lo mejor no me entendiste.
Requiero saber si en una tabla cualquire, realizada con mysql , existe o no un campo ?
Como averiguo esa informacion ?
Requiero saber si en una tabla cualquire, realizada con mysql , existe o no un campo ?
Como averiguo esa informacion ?
-
- Posts: 41
- Joined: Thu Sep 17, 2015 11:40 pm
Re: Detectar si existe campo en tabla MySQL
cMsg :="SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE()AND COLUMN_NAME='actaconformidad_mod' AND TABLE_NAME='formularios' "
cQry := oServer:Query( cMsg )
If cQry:lastrec()=0
cMsg := "ALTER TABLE formularios "
cMsg += "ADD COLUMN actaconformidad_mod VARCHAR(80) NULL AFTER actaconformidad"
oServer:Execute( cMsg )
EndIf
cQry:end()
Lo uso asi para comprobar si no existe la columna y agregarla
cQry := oServer:Query( cMsg )
If cQry:lastrec()=0
cMsg := "ALTER TABLE formularios "
cMsg += "ADD COLUMN actaconformidad_mod VARCHAR(80) NULL AFTER actaconformidad"
oServer:Execute( cMsg )
EndIf
cQry:end()
Lo uso asi para comprobar si no existe la columna y agregarla
Re: Detectar si existe campo en tabla MySQL
Carlos, muchas gracias.
Es una muy buena idea, no se me habria ocurrido tomarlo asi, es un poco mas largo, pero creo que funcionara.
Yo pensaba que existe algun comando o funcion para detectar un campo.
Saludos,
Es una muy buena idea, no se me habria ocurrido tomarlo asi, es un poco mas largo, pero creo que funcionara.
Yo pensaba que existe algun comando o funcion para detectar un campo.
Saludos,
Re: Detectar si existe campo en tabla MySQL
Con Dolphin podría ser asi:
Code: Select all
if (ascan(oRs:aColumns,'direccion') > 0)
// Existe
Re: Detectar si existe campo en tabla MySQL
MGA, gracias tambien por la informacion, ahora probando, entendi lo que me decias, sorry
Re: Detectar si existe campo en tabla MySQL
Gracias Cesar, esa forma no la conocia, esta excelente, pues utilizo el mismo TDolphin.