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 05-01-2009
Avatar de Alexandro
Alexandro Alexandro is offline
Miembro
 
Registrado: mar 2008
Ubicación: Mayarí Holguín Cuba
Posts: 127
Poder: 17
Alexandro Va por buen camino
Question Problemas con el TADOQuery

Hola amigos:
Ante todo felicidades por el año nuevo. Mi problema es el siguiente:
En una base de datos en SQL SERVER tengo una tabla X que tiene los campos DNI, Nombre, Apellidos, Edad, etc... Y quiero hacer una consulta que cuando el usuario escoja el DNI (valor unico) me salgan los demas datos relacionados con ese DNI. La consulta la realizo con un TADOQuery y seria asi:
Código Delphi [-]
 With Modulo_Busqueda.Consulta_Busqueda do
    begin
      Close;
       SQL.Clear;
       SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa :valor';
      Open;
    end;
Como pueden ver me falta el parametro para decirle que asuma por valor a lo que esta en un Edit. Resulta que la funcion Params o ParamsByName no aparecen. Yo he trabajado anteriormente con base de datos de escritorio y habia hecho las consultas con el Query muy bien. Sera que aqui cambia algo? Uso Delphi7.
Espero me ayuden.
Muchas gracias y suerte.
__________________
Cuando las cosas van mal, recuerda que aún pueden ir peor
Responder Con Cita
  #2  
Antiguo 05-01-2009
Avatar de Nati1
Nati1 Nati1 is offline
Miembro
 
Registrado: nov 2007
Posts: 24
Poder: 0
Nati1 Va por buen camino
O
Código Delphi [-]
With Modulo_Busqueda.Consulta_Busqueda do    
begin       
Close;       
 SQL.Clear;        
SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa :valor';
Parameters[0].Value:= Edit1.text;        
Open;     
end;

O
Código Delphi [-]
With Modulo_Busqueda.Consulta_Busqueda do     
begin       
Close;        
SQL.Clear;        
SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa :valor'; 
Parameters.ParamByName('valor').Value:= Edit1.Text;       
Open;     
end;

Última edición por Nati1 fecha: 05-01-2009 a las 21:18:05.
Responder Con Cita
  #3  
Antiguo 05-01-2009
Avatar de Alexandro
Alexandro Alexandro is offline
Miembro
 
Registrado: mar 2008
Ubicación: Mayarí Holguín Cuba
Posts: 127
Poder: 17
Alexandro Va por buen camino
Question

Hola Neftali:
He hecho lo que me has pedido es esto:
Código Delphi [-]
With Modulo_Busqueda.Consulta_Busqueda do
    begin
      Close;
       SQL.Clear;
       SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa :valor';
       Parameters.ParamByName('valor').Value:=CBox_NoSolapin.text; 
      Open;
    end;
Todo compila de lo mejor. Luego de correr la apli me da el siguiente error:
Line 1 : Incorrect syntax near @P1.
Sabes a que se debe esto?
__________________
Cuando las cosas van mal, recuerda que aún pueden ir peor
Responder Con Cita
  #4  
Antiguo 05-01-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola Alexandro,
¿El campo y el parámetro de que tipo son?
Porque pareciera ser que hablas de numero, y estás pasando un texto.
Una cosa es escribir un número en un TEdit, y otra es que en tu base de datos sea número.

Creo que el error se debe a eso. Deberías hacer la conversión de forma apropiada y además indicar el DataTpe:

Código Delphi [-]
ADOQuery1.Parameters.ParamByName('Valor').Value := IntToStr(...);
ADOQuery1.Parameters.ParamByName('Valor').DataType := ftInteger;

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 05-01-2009
Avatar de Alexandro
Alexandro Alexandro is offline
Miembro
 
Registrado: mar 2008
Ubicación: Mayarí Holguín Cuba
Posts: 127
Poder: 17
Alexandro Va por buen camino
Hola delphius:
El tipo de dato que guarda el campo No_Chapa es tipo texto, lo hago asi para trabajar mejor con el.
No se que es lo que pasa que no sale.
__________________
Cuando las cosas van mal, recuerda que aún pueden ir peor
Responder Con Cita
  #6  
Antiguo 05-01-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
¿Estableces el valor de DataType en ftString?

Debería funcionar. No veo error en el código, a menos que el error provenga de otro lado.

EDITO:
Prueba llamando al parámetro de éste modo: @Nombre.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]

Última edición por Delphius fecha: 05-01-2009 a las 22:35:20.
Responder Con Cita
  #7  
Antiguo 05-01-2009
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
hola, creo que te falta un =

Código Delphi [-]
SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa = :valor';
Responder Con Cita
  #8  
Antiguo 05-01-2009
Avatar de Nati1
Nati1 Nati1 is offline
Miembro
 
Registrado: nov 2007
Posts: 24
Poder: 0
Nati1 Va por buen camino
Correcto, es mi culpa por copiar y pegar sin ver:
Código Delphi [-]
With Modulo_Busqueda.Consulta_Busqueda do     
begin       
Close;        
SQL.Clear;        
SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa = :valor'; 
Parameters.ParamByName('valor').Value:= CBox_NoSolapin.text;       
Open;     
end;
Responder Con Cita
  #9  
Antiguo 16-01-2009
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Saludos.

No se si esto te pueda servir, al menos yo utilizo este tipo de consultas y no he tenido ningun problema
Código Delphi [-]
With Modulo_Busqueda.Consulta_Busqueda do    
 begin  
     Close;   
     SQL.Clear; 
     SQL.Text:='SELECT * FROM Tbl_Trabajador WHERE No_Chapa ='+quotedstr(edit1.text);
     Open;  
     end;

Con esto no tienes la necesidad de convertir los datos.
Espero que te sirva!!
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
Problema con TADOQuery Nomad SQL 11 25-10-2007 15:19:27
Clonar TADOQuery david.rguez Conexión con bases de datos 2 19-09-2007 16:26:44
Tadoquery Y Dbgrid fernandoio Conexión con bases de datos 3 11-06-2006 04:10:11
Error con el Tadoquery jas010 SQL 2 03-03-2005 23:32:07
Problema con un TADOQuery Holderhek Conexión con bases de datos 2 02-02-2005 23:22:13


La franja horaria es GMT +2. Ahora son las 09:41:53.


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