Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-09-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hola, si los datos vienen de un TEdit, ComboBox, Etc. entonces seria de esta manera:

Código SQL [-]
MyQuery1.SQL.Clear;
MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
MyQuery1.SQL.Add('where n24_notaria.iduser = :iduser');
MyQuery1.SQL.Add('AND n24_notaria.status ='+Quotedstr('TRUE')+'')
MyQuery1.SQL.Add('AND n24_notaria.iduser = 1' );<---CREO QUE ESTO ESTA DEMAS
MyQuery1.ParamByName('iduser').Value:=Edit1.Text;
MyQuery1.ExecSQL;
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.

Última edición por enecumene fecha: 12-09-2007 a las 16:48:42.
Responder Con Cita
  #2  
Antiguo 12-09-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 255
Poder: 21
vroa74 Va por buen camino
Question

tengo dado de alta varios campo y varios registros.
lo rado del codigo es:

Código Delphi [-]
MyQuery1.SQL.Clear;
MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
MyQuery1.SQL.Add('where n24_notaria.iduser = :iduser');
MyQuery1.SQL.Add('AND n24_notaria.status ='+Quotedstr('TRUE')+'')
MyQuery1.SQL.Add('AND n24_notaria.iduser = 1' );
MyQuery1.ParamByName('iduser').Value:=Edit1.Text;
MyQuery1.ExecSQL;

id es un valor entero.
lo hice de esa forma y
Código Delphi [-]
 MyQuery1.ParamByName('iduser').Value:=strtoint(Edit1.Text);
y el varo que recibo de la consultas no es el esperado
Código SQL [-]
MyQuery1.ExecSQL; 
// por elguna raso  {MyQuery1.ExecSQL;}  no me funciono y escribi:
MyQuery1.Open;
// que si me funciono.

Última edición por vroa74 fecha: 12-09-2007 a las 16:58:11. Razón: completar textos imcompletos
Responder Con Cita
  #3  
Antiguo 12-09-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Hola! Creo que esto debería andar...

Código Delphi [-]
MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
MyQuery1.SQL.Add('where n24_notaria.iduser = n24_usuario.iduser');
MyQuery1.SQL.Add('AND n24_notaria.status ="TRUE"')
MyQuery1.SQL.Add('AND n24_notaria.iduser = :ID_USER' );
// ID_USER es un parámetro. Para reconocer un parámetro
// de otra "cosa" se debe anteponer los dos puntos (

// Se declara el paramátro y se le indica de donde obtener el
// valor. Cuidado con este tema: Asumo que se espera un integer
MyQuery1.ParamByName('ID_USER').vALUE := IntToStr(Edit1.Text);

// Ejecuto la consulta:
myQyery1.Open; // Es OPEN! No ExecSQL

Saludos,

EDITO: ve que ya vieron el error... llegue tarde
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #4  
Antiguo 12-09-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 255
Poder: 21
vroa74 Va por buen camino
Question

Mi pregunta sigue:

perdonen si doy lata
Código Delphi [-]
MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
MyQuery1.SQL.Add('where n24_notaria.iduser = n24_usuario.iduser');
MyQuery1.SQL.Add('AND n24_notaria.status ="TRUE"'); // este es un campo bool que puede el valor es dado por un checkbox= como intrego el checkbos al query ????
MyQuery1.SQL.Add('AND n24_notaria.iduser = :ID_USER' ); // id user es un campo entero dado por un edit textcomo lo intero al Query ???????
MyQuery1.ParamByName('ID_USER').vALUE := IntToStr(Edit1.Text);
MyQuery1.Open;
Responder Con Cita
  #5  
Antiguo 12-09-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
A ver... acabo de ver algo que posiblemente este mal. La asignación de los valores de parámetros debe hacerse una vez... y por lo que he visto se comparaba dos veces con el ID. Esto lo verán en la consulta.

Bueno... no se a que te refieres a integrarlo con un query. Si te explicas mejor... No se si te entendí bien... pero que haces referencia a algo como:

Código Delphi [-]
MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
  MyQuery1.SQL.Add('where n24_notaria.iduser = :ID_USER'); //ID_USER debe aparecer
  // una sola vez... para que hacer comparaciones innecesarias!
  MyQuery1.SQL.Add('AND n24_notaria.status = :ESTATUS);
  MyQuery1.ParamByName('ID_USER').vALUE := IntToStr(Edit1.Text);
  MyQuery1.ParamByName('ESTATUS').value := str_status;
  MyQuery1.Open;

Código Delphi [-]
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  // Estoy suponiendo que en el campo se ingresa en forma string
  // str_status es una variable global o de acceso público
  if CheckBox1.Checked
     then str_status := 'TRUE'
     else str_status := 'FALSE';
end;

Lo que hago es cambiar el valor de str_status de modo que cuando se lanze la consulta se pase TRUE o FALSE...

No si está bien lo que dije... pero bueno... creo dar la idea.
Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #6  
Antiguo 12-09-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 255
Poder: 21
vroa74 Va por buen camino
Question

Comentario final

le doy gracias a todos ustedes por apoyarme. Por el momento llegue a esta colclusion:

Código Delphi [-]
            MyQuery1.SQL.Clear;
            MyQuery1.SQL.Add('SELECT * FROM n24_usuario, n24_notaria');
            MyQuery1.SQL.Add('where n24_notaria.iduser = n24_usuario.iduser');
            MyQuery1.SQL.Add('and n24_notaria.iduser ='+ Edit1.Text+'');
            if CheckBox1.Checked then
            MyQuery1.SQL.Add('and n24_notaria.status = true')
            else
            MyQuery1.SQL.Add('and n24_notaria.status = false');
            MyQuery1.Open;

la verdad no se si es por la version de mydac, o quizas sean otros aspectos.
la verdad es que me esta funcionando.

Si alguien encuentra alguna forma de optimizar el codigo o ve algo para mejorarlo, escribanlo.

Mucha gracias enecumene y [Delphius] Respectivamente por la ayuda.

Caundo termine espro poder colgar ayudar con respecto a todos los problemas que he tenido para realizar este sistema.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Sobre la función StartService y sus parámetros dec API de Windows 19 01-03-2008 04:17:02
Funciones y Polimorfismo: Como pasar parámetros gaps2k OOP 12 16-07-2007 16:48:18
La FIFA acordó que no se jugarán partidos internacionales a más de 2.500 metros semptrion La Taberna 32 09-06-2007 23:24:25
como conectarme remotamente mysql a mysql sakuragi MySQL 14 11-11-2004 15:04:46
operaciones con metros cuatros botones67 Varios 11 16-06-2004 08:42:22


La franja horaria es GMT +2. Ahora son las 21:15:24.


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