Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-11-2011
leandro_matiasp leandro_matiasp is offline
Registrado
 
Registrado: abr 2008
Posts: 9
Poder: 0
leandro_matiasp cantidad desconocida en este momento
Exclamation Error Urgente

por favor necesito saber si alguien saber por que me esta sucediendo esto, necesito presentar un trabajo y aun estoy tratando de entender por que
Código Delphi [-]
 if fconexion.qbuscar['nombre']= enombre_usuario.Text then
          begin
            nombre_usuario:=fconexion.qbuscar['nombre'];
            idusuario:=fconexion.qbuscar['idempleados'];

me de un ERror de Edatabase error de field 'nombre' not found, cuando en realidad el campo existe con ese nombre en la tabla en la base de datos. no se si necesitan algo mas. Por favor realmente es urgente sino no lo hubiese puesto asi, perdon el error me de en la primera linea que puse lo otro es un poco mas de codigo.

Última edición por leandro_matiasp fecha: 25-11-2011 a las 14:47:30.
Responder Con Cita
  #2  
Antiguo 25-11-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.
Responder Con Cita
  #3  
Antiguo 25-11-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
que cosa es qbuscar?
un query donde capturas el nombre del usuario?

si es un query podrias hacerlo asi

Código Delphi [-]
  NombreUsuario := fconexion.qbuscarNombre.AsString;
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #4  
Antiguo 25-11-2011
leandro_matiasp leandro_matiasp is offline
Registrado
 
Registrado: abr 2008
Posts: 9
Poder: 0
leandro_matiasp cantidad desconocida en este momento
qbuscar es un componente del tipo TQuery donde se le pasa una sentencia sql para que ejecute
Responder Con Cita
  #5  
Antiguo 25-11-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
Cita:
Empezado por leandro_matiasp Ver Mensaje
qbuscar es un componente del tipo TQuery donde se le pasa una sentencia sql para que ejecute
entonces prueba como te dije si es que en el query estan los campos persistentes o tambien puedes hacerlo asi

Código Delphi [-]
 
NombreUsuario := fconexion.qbuscar.fieldbyname('Nombre').AsString
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #6  
Antiguo 25-11-2011
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 leandro_matiasp Ver Mensaje
me de un ERror de Edatabase error de field 'nombre' not found, cuando en realidad el campo existe con ese nombre en la tabla en la base de datos.
Siendo una consulta SQL, que el campo exista en la base de datos no necesariamente implica que exista en tu componente. Asegúrate de que la consulta incluya dicho campo en el SELECT.

¡Ah! Y cuando se termine la urgencia, por favor, lee la guía de estilo

// Saludos
Responder Con Cita
  #7  
Antiguo 25-11-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Para más datos, pon exactamente la consulta que estás utilizando.
Que la consulta incluya el campo nombre, no quiere decir que en el Dataset resultante esa columna se llame nombre necesariamente si no se lo has especificado tú.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 25-11-2011
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 Neftali Ver Mensaje
Que la consulta incluya el campo nombre, no quiere decir que en el Dataset resultante esa columna se llame nombre necesariamente si no se lo has especificado tú.
¡Ah caray! Esto sí me confundió. ¿Cómo puede suceder que difiera el nombre en el dataset a menos que se use un alias en el SELECT?

// Saludos
Responder Con Cita
  #9  
Antiguo 25-11-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por roman Ver Mensaje
¡Ah caray! Esto sí me confundió. ¿Cómo puede suceder que difiera el nombre en el dataset a menos que se use un alias en el SELECT?
Tal vez no me expliqué.
Quiero decir, que si no usas ALIAS, puede ser que dependiendo de cómo sea la consulta (por ejemplo si utiliza JOIN), lo que en la tabla es un campo nombre, en el resultado de la consulta no lo sea (por ejemplo si es una JOIN de dos tablas que las dos poseen un campo NOMBRE).

No se si me explico.

AÑADO: Pongo un ejemplillo. Si yo lanzo una consulta como esta:

Código SQL [-]
Select TablaUsuario.*, TBase.* from TablaUsuario 
inner join TBase
on TBase.ID=TablaUsuario.ID

Como las dos tablas poseen el campo ID, en el dataset resultante, el primero llega con el nombre ID y el segundo con el nombre ID_1.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 25-11-2011 a las 17:24:34.
Responder Con Cita
  #10  
Antiguo 25-11-2011
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
Mmm. No recuerdo ahora qué hace delphi en esos casos. Si dos campos tienen el mismo nombre (en un join, como dices), ¿qué pasa en el dataset? ¿Se les pone nombre1 y nombre2? ¿Se omite uno de los dos? Me da la impresión que or lo menos uno quedaría con su nombre original y que no presentaría el error que menciona el compañero. Pero habrá que hacer la prueba...

// Saludos
Responder Con Cita
  #11  
Antiguo 25-11-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
coloca la cadena o la consulta de qbuscar para salir de dudas
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #12  
Antiguo 25-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Interesante... no me lo había cuestionado nunca por que siempre nombro el campo ID_NOMBRE_DE_TABLA.

Hice la prueba (con IBQuery y Firebird) y devuelve: ID e ID1, tanto en IBExpert como desde Delphi.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #13  
Antiguo 25-11-2011
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 ecfisa Ver Mensaje
Hola.

Interesante... no me lo había cuestionado nunca por que siempre nombro el campo ID_NOMBRE_DE_TABLA.

Hice la prueba (con IBQuery y Firebird) y devuelve: ID e ID1, tanto en IBExpert como desde Delphi.

Saludos.
Je, je. Yo hacía lo mismo hasta que se me hizo redundante llamar id_cliente a un campo de la tabla cliente Qué bueno que hiciste la prueba, ahora ya sabemos

// Saludos
Responder Con Cita
  #14  
Antiguo 25-11-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En SQLServer, tienes razón Román, en que mantiene siempre el primero con el nombre original (supongo que para evitar dentro de todo lo posible los errores); En el caso de repetición utiliza el UNDERSCORE; De forma que si el primero es ID, el segundo es ID_1.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #15  
Antiguo 25-11-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por roman Ver Mensaje
Je, je. Yo hacía lo mismo hasta que se me hizo redundante llamar id_cliente a un campo de la tabla cliente
Esto me hizo recordar viejos tiempos, y no tan viejos también.
Responder Con Cita
  #16  
Antiguo 29-11-2011
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
Solo por dar el dato,

yo utilizo access y cuando uno dos tablas que tienen nombres de campos iguales, si quiero acceder luego a sus valores tengo que poner tabla1.campo o tabla2.campo, así es como me los diferencia.

Saludos.
Responder Con Cita
  #17  
Antiguo 29-11-2011
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Error Urgente

Cita:
Empezado por leandro_matiasp Ver Mensaje
por favor necesito saber si alguien saber por que me esta sucediendo esto, necesito presentar un trabajo y aun estoy tratando de entender por que
Código Delphi [-]
 if fconexion.qbuscar['nombre']= enombre_usuario.Text then
          begin
            nombre_usuario:=fconexion.qbuscar['nombre'];
            idusuario:=fconexion.qbuscar['idempleados'];

me de un ERror de Edatabase error de field 'nombre' not found, cuando en realidad el campo existe con ese nombre en la tabla en la base de datos. no se si necesitan algo mas. Por favor realmente es urgente sino no lo hubiese puesto asi, perdon el error me de en la primera linea que puse lo otro es un poco mas de codigo.
Revisa que el campo nombre este en minusculas o mayusculas
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Error Ado Urgente soloriv Conexión con bases de datos 1 17-04-2006 17:20:49
URGENTE: Error en Conexion del BDE. zugazua2001 Internet 2 24-02-2005 15:24:10
Error en ADOQuery ¡¡URGENTE!! Victor Pimentel Conexión con bases de datos 2 25-10-2004 08:34:35
Error en la conexion urgente !!!! karocs Conexión con bases de datos 0 17-09-2004 15:32:47


La franja horaria es GMT +2. Ahora son las 16:19:15.


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