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 10-09-2008
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 254
Poder: 18
vroa74 Va por buen camino
sql dinamico interbase

estoy tratando de construir una sentencia sql dinamica, mas sin embargo me marca errores.
Necesito buscar por rango de fechas y por nombre mas no he podido.
no se si esta bien la forma en que lo plamo o quizas haya algun caracter que sea diferente.
aqui esta el codigo....
Código Delphi [-]
var   FIni, FFin  :String;
      A,M,D : Word;

begin
 if Form1.IBQuery1.Active then
 begin
   form1.IBQuery1.Close;
   form1.IBQuery1.SQL.Clear;
   Memo1.Text :='';
 end;

  with form1 do
  begin
          IBQuery1.SQL.Add('SELECT');
          IBQuery1.SQL.Add('servicios.`status`,');
          IBQuery1.SQL.Add('servicios.id_ser,');
          IBQuery1.SQL.Add('servicios.f_recep,');
          IBQuery1.SQL.Add('servicios.f_ini,');
          IBQuery1.SQL.Add('servicios.nombre,');
          IBQuery1.SQL.Add('servicios.ofi_dir,');
          IBQuery1.SQL.Add('servicios.f_ter,');
          IBQuery1.SQL.Add('servicios.ob_sol,');
          IBQuery1.SQL.Add('servicios.m_correc,');
          IBQuery1.SQL.Add('servicios.m_prev,');
          IBQuery1.SQL.Add('servicios.software,');
          IBQuery1.SQL.Add('servicios.red,');
          IBQuery1.SQL.Add('servicios.`diseño`,');
          IBQuery1.SQL.Add('servicios.soporte,');
          IBQuery1.SQL.Add('servicios.impresion,');
          IBQuery1.SQL.Add('servicios.sol,');
          IBQuery1.SQL.Add('servicios.sol_via_email,');
          IBQuery1.SQL.Add('servicios.sol_via_ofi,');
          IBQuery1.SQL.Add('servicios.sol_via_oral,');
          IBQuery1.SQL.Add('servicios.sol_via_tel,');
          IBQuery1.SQL.Add('servicios.sol_via_otro,');
          IBQuery1.SQL.Add('servicios.sol_via_ofi_num,');
          IBQuery1.SQL.Add('servicios.sol_via_memo,');
          IBQuery1.SQL.Add('servicios.ac_rea,');
          IBQuery1.SQL.Add('servicios.obser,');
          IBQuery1.SQL.Add('servicios.respon,');
          IBQuery1.SQL.Add('servicios.dir_resp,');
          IBQuery1.SQL.Add('servicios.img');
          IBQuery1.SQL.Add('FROM');
          IBQuery1.SQL.Add('servicios');
          IBQuery1.SQL.Add('WHERE');
          IBQuery1.SQL.Add('servicios.nombre ='+Edit1.Text+'');
          if (JvDateTimePicker1.Date = JvDateTimePicker2.Date) then
           begin
                  IBQuery1.SQL.Add('Date_Format(servicios.f_ini,''%d/%m/%Y'') = '+ QuotedStr(DateToStr(JvDateTimePicker1.Date)) +'');
                  Memo1.Text := 'si paso';
            end else begin
              DecodeDate(JvDateTimePicker1.Date,A,M,D);
              FIni := IntToStr(A) + '/' + IntToStr(M)+ '/' + IntToStr(D);
              DecodeDate(JvDateTimePicker2.Date,A,M,D);
              FFin := IntToStr(A) + '/' + IntToStr(M)+ '/' + IntToStr(D);
              IBQuery1.SQL.Add('ANd');
              IBQuery1.SQL.Add('servicios.f_ini BETWEEN '+QuotedStr(Fini) + ' AND ' + QuotedStr(FFin));
          Memo1.Lines.Add (Form1.IBQuery1.SQL.Text);
          IBQuery1.Open; // abrir query

Última edición por vroa74 fecha: 10-09-2008 a las 19:06:08. Razón: ERROR DE ESTRITURA
Responder Con Cita
  #2  
Antiguo 10-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.561
Poder: 25
egostar Va camino a la fama
Hola

Es curiosa la forma como agregas el texto a tu Query, bueno, eso es estilo de cada quien, no problema.

Yo alcanzo a ver unos detalles, te hace falta agregar espacios en las lineas que te muestro, checa como lo tienes y compara como te lo sugiero.

Código Delphi [-]
          IBQuery1.SQL.Add('SELECT ');
          IBQuery1.SQL.Add('servicios.`status`,');
          //:::::::::::
          IBQuery1.SQL.Add(' FROM ');
          IBQuery1.SQL.Add('servicios ');
          IBQuery1.SQL.Add('WHERE ');
          IBQuery1.SQL.Add('servicios.nombre = '+QuotedStr(Edit1.Text));

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #3  
Antiguo 10-09-2008
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 254
Poder: 18
vroa74 Va por buen camino
Question

muchas gracisa por la ayuda

me estoy topando con otro problema
como puedo buscar por ejemplo a todos los que se llama jose
si en el campo nombre algunos se llaman jose angel, o jose luis ???
como podria ser la sentencias
Código Delphi [-]
         IBQuery1.SQL.Add('NOMBRE LIKE '+QuotedStr(Edit3.Text));
Tengo dudas si lleva otro prametro pues no me esta respetando los nombres dobles por ejemplo Jose Luis no lo intrege en la busqueda

Última edición por vroa74 fecha: 10-09-2008 a las 21:28:29.
Responder Con Cita
  #4  
Antiguo 10-09-2008
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 19
felipe88 Va por buen camino
Usa un like...
__________________
Web
Responder Con Cita
  #5  
Antiguo 11-09-2008
ninguno ninguno is offline
Miembro
 
Registrado: sep 2008
Posts: 45
Poder: 0
ninguno Va por buen camino
Hola

Prueba con

Código Delphi [-]
IBQuery1.SQL.Add('NOMBRE LIKE ' + QuotedStr('%' + Edit3.Text + '%'));
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
Array Dinamico VRO Varios 6 14-06-2005 12:40:16
red con direccionamiento dinamico santiago14 Conexión con bases de datos 1 24-01-2005 13:07:50
arreglo dinamico prubtest C++ Builder 1 31-07-2004 23:54:45
Array Dinamico senpiterno Varios 4 22-07-2004 18:37:06
IP Dinámico buitrago Varios 3 10-09-2003 18:35:43


La franja horaria es GMT +2. Ahora son las 02:53:39.


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