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 15-12-2005
chipsoni chipsoni is offline
Miembro
 
Registrado: nov 2005
Posts: 75
Poder: 19
chipsoni Va por buen camino
comparar con el contenido de un dbedit

Necesito seleccionar 4 campos de una tabla donde la empresa (el código de la empresa es numérico) coincida con el que hay en un campo DBEdit de mi formulario, lo he hecho asi:

Select reservacredito, fecha, importe, satisfaccion
from tpedidos where empresa=StrToInt(DBEcodigo)

pero me da error de sintaxis en DBEcodigo.

Muchas gracias
Responder Con Cita
  #2  
Antiguo 15-12-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Código Delphi [-]
with TuQueryODataset do begin
 if active then close;
 SQL.Clear;
 SQL.Add('Select reservacredito, fecha, importe, satisfaccion');
 SQL.Add('From tpedidos');
 SQL.Add('where empresa='+StrToInt(DBEcodigo));
 Open;
end; //with TuDataset

aunque antes de esto creo que deberías comprobar con TryStrToInt para evitar errores de conversión....
__________________

Responder Con Cita
  #3  
Antiguo 15-12-2005
chipsoni chipsoni is offline
Miembro
 
Registrado: nov 2005
Posts: 75
Poder: 19
chipsoni Va por buen camino
Yo es que lo estaba escribiendo en el campo sql del inspector de objetos del query y creo que se pone la consulta normal, sin necesidad de add y lo que requiere el delphi, ¿no lo puedo hacer desde ahí?.

Es que en realidad lo necesito para rellenar campos de un dbgrid.
Responder Con Cita
  #4  
Antiguo 15-12-2005
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Cita:
Empezado por ContraVeneno
Código Delphi [-]
...
SQL.Add('where empresa='+StrToInt(DBEcodigo));
Open;
end; //with TuDataset
...
Si DBEcodigo es un string basta con que se haga
Código Delphi [-]
SQL.Add('where empresa='+DBEcodigo);
y si es un integer habrá que hacer
Código Delphi [-]
SQL.Add('where empresa='+IntToStr(DBEcodigo));
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #5  
Antiguo 15-12-2005
chipsoni chipsoni is offline
Miembro
 
Registrado: nov 2005
Posts: 75
Poder: 19
chipsoni Va por buen camino
No, es que empresa en la tabla pedido es un entero y en el dbedit se transforma automaticamente en texto, ¿no?
Responder Con Cita
  #6  
Antiguo 15-12-2005
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Cita:
Empezado por chipsoni
Yo es que lo estaba escribiendo en el campo sql del inspector de objetos del query y creo que se pone la consulta normal, sin necesidad de add y lo que requiere el delphi, ¿no lo puedo hacer desde ahí?.

Es que en realidad lo necesito para rellenar campos de un dbgrid.
Desde en el campo sql no puedes meter directamente una variable, eso lo tienes que hacer desde el código, componiendo la consulta y pasandola (como string), ya que el campo sql sólo admite un string
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #7  
Antiguo 15-12-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

Dejen que delphi se encargue de esto:
Código Delphi [-]
with TuQueryODataset do begin
 if active then close;
 SQL.Clear;
 SQL.Add('Select reservacredito, fecha, importe, satisfaccion');
 SQL.Add('From tpedidos');
 SQL.Add('where empresa=:emp');
 ParamByName('emp').AsString:=DBEcodigo.Text;//O asSInteger
 Open;
end; //with TuDataset
__________________
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
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:19:00.


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