Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Question Que Campo, Alias?

Saludos.
Código SQL [-]
Select nom as nombre from Empleados
Como puedo saber el nombre del campo consultado por medio del Alias?
Como obtengo nom como resultado? porque en realidad es el campo que esta siendo consultado
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #2  
Antiguo 19-05-2005
Avatar de hermes_32
hermes_32 hermes_32 is offline
Miembro
 
Registrado: jul 2003
Posts: 94
Poder: 21
hermes_32 Va por buen camino
Hola vtdeleon,

te sugiero que te expliques mas porque no se a que te refieres ni creo que nadie que lo lea.

Un saludo.
Responder Con Cita
  #3  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos.

Ok, Disculpe. Como la idea solo esta en mi cabeza, lo exprese como lo entiendo.

Suponiendo que tengo un Query, y dbgrid conectados entre si.

En la consulta anterior, me devolvera un Campo llamado Nombre. Pero en realidad el nombre de ese campo en la tabla no es Nombre sino nom.

Como obtengo en nombre real del Campo?, por medio de esa consulta.

La idea es dar clic en title del click y extraer el nombre real del campo, para realizar otra cosa.

Gracias por la observacion y el interes
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 19-05-2005 a las 15:45:28.
Responder Con Cita
  #4  
Antiguo 19-05-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
dbgrid1.Columns[0].FieldName????
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #5  
Antiguo 19-05-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
FieldByName devolverá "nombre" y no nom.

La unica solución que veo es que te crees tu propio analizador de consultas y armes una lista expresion/alias... aunque no entiendo el porque de esto.

Saludos.
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #6  
Antiguo 19-05-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por jachguate
aunque no entiendo el porque de esto.
Yo tampoco. Si se requiere el nombre original entonces ¿para qué usar alias?

// Saludos
Responder Con Cita
  #7  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos.
Cita:
Empezado por roman
Yo tampoco. Si se requiere el nombre original entonces ¿para qué usar alias?
Al mostrar un dbgrid con el nombre del campo nom, el usuario no entendera lo que quiere decir este campo, pero por ejemplo en una tabla tengo CODEMP, que yo lo entiendo como Codigo de Empleado pero en una consulta SQL lo pongo Select codemp as Codigo, nom as nombre.....

Este es el Por Qué.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #8  
Antiguo 19-05-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Entonces no uses alias, simplemente cambia el título de las columnas del dbgrid para que tus usuarios le entiendan.

// Saludos
Responder Con Cita
  #9  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Talking

Saludo.

Jeje sabia que me ivan a decir eso

Esta formulario (frmbuscar) que contiene el query1, dbgrid... es creada (en forma modal) por otros formularios (dependiendo del caso). Cada uno de esos formulario requiere diferentes campo. Decidi hacerlo asi para no crear muchos formularios para un mismo proposito.

Ej: Tengo 4 formularios. Son frmempleado, frmdepartamentos, frmocupacion y frmbuscar.
A Excepcion del ultimo, cada uno de estos formulario tiene un boton el cual llama a frmbuscar (que es de consulta):

Código Delphi [-]
 Procedure Tfrmempleado.btBuscarClick....;{El formulario puede ser tambien Frmdepartamento o frmocupacion}
  begin
    frmbuscar:=Tfrmbuscar.create(self);
    frmbuscar.Campos:='codemp as Codigo, nom as nombre, apell As apellido';
    frmbuscar.tabla:='empleados'
    .....
    if frmbuscar.ShowModal= mrok then
      ...
      ...
  
    FreeAndNil(frmbuscar);
  end;
Y asi con los demas, solo cambiandole el campo y la tabla.
En frmbuscar:
Código Delphi [-]
procedure tfrmbuscar.FormActivate...;//o en FormShow
    begin
      query1.close
      with query1.sql do begin
        add('Select '+ Campos);
        add('from '+ tabla);
        ...
      end;
      query1.prepare;
      query1.open;
    end;
Al crear la consulta de forma que cada formulario pide campos diferentes, no puedo hacer lo que me indica Roman.

Gracias por el interes
No es el hilo indicado pero:
Por Otra parte Felicidades Roman, veo que hoy es tu cumplea~o. Muchas felicidades!!!
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 19-05-2005 a las 20:52:54.
Responder Con Cita
  #10  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Talking

Saludos.
Cita:
Empezado por jachguate
La unica solución que veo es que te crees tu propio analizador de consultas y armes una lista expresion/alias...
Como hago esto?
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #11  
Antiguo 19-05-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por vtdeleon
no puedo hacer lo que me indica Roman.
¡Ay! ¡No inventes! Se me hace que te gusta complicarte la vida

En tu btBuscarClick, así como asignas el nombre de la tabla y el campo, así también asigna el título de la columna y déjate de hacerte difícil la vida


Cita:
Empezado por vtdeleon
No es el hilo indicado pero:
Por Otra parte Felicidades Roman, veo que hoy es tu cumplea~o. Muchas felicidades!!!
Muchísimas gracias. Aunque he llegado a una edad en la que ya no sé si festejar o ponerme una "guarapeta" para olvidar.

// Saludos
Responder Con Cita
  #12  
Antiguo 19-05-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Talking

Saludos
Cita:
Empezado por roman
¡Ay! ¡No inventes! Se me hace que te gusta complicarte la vida
Crei lo contrario, ya que utilizo el mismo forma para consultar. Lo complicado es la consulta
Cita:
Empezado por roman
En tu btBuscarClick, así como asignas el nombre de la tabla y el campo, así también asigna el título de la columna y déjate de hacerte difícil la vida
Ok, Sera asi
Cita:
Empezado por roman
Muchísimas gracias. Aunque he llegado a una edad en la que ya no sé si festejar o ponerme una "guarapeta" para olvidar.
Recuerda esto: Envejecer es Obligatorio, Madurar es Opcional!!
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #13  
Antiguo 20-05-2005
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 23
__hector Va por buen camino
Cita:
Empezado por vtdeleon
Saludos
... Recuerda esto: Envejecer es Obligatorio, Madurar es Opcional!!
me suena a promocion de algun whisky.

por otra parte, es imposible llegar al resultado de un campo a partir de un alias, pues un alias puede ser cualquier cosa: desde un campo de la tabla de la forma

select campo as alias from...

hasta una combinacion de campos de la forma

select campo1 + ' ' + campo2 as alias from...

o una constante como

select 0 as alias from....

o incluso, campos calculados, o cualquier cosa que se te ocurra

select left(campo1, 3) + CONVERT(varchar, campo2 * 0.13) + 'nosequecosa' as alias
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:59:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi