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 19-05-2013
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 13
jonydread Va por buen camino
Consultar si registro existe en campo de 2 tablas

como puedo unir campos para ver si existe campo en ambas tablas
por ejemplo en campo1 de tabla1 y campo1 de tabla2 si existe el numero 1
he probado de este modo pero no logro funcionamiento
Código Delphi [-]
  zquery1.SQL.Text := 'SELECT * FROM  AsignadosA inner JOIN AsignadosB on AsignadosA.Sierras=AsignadosB.Sierras where AsignadosA.Sierras = ' + QuotedStr(dblookupcombobox1.KeyValue);
  zquery1.Open;

saludos!
Responder Con Cita
  #2  
Antiguo 19-05-2013
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
Cita:
Empezado por jonydread Ver Mensaje
como puedo unir campos para ver si existe campo en ambas tablas
por ejemplo en campo1 de tabla1 y campo1 de tabla2 si existe el numero 1
Hola jonydread.

Si queres verificar si existen ocurrencias en ambas tablas podes hacer:
Código Delphi [-]
function Tu_Form.ExisteEnAmbas(aValue: Variant): Boolean;
begin
  with ZQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT COUNT(*) AS EXISTE');
    SQL.Add('FROM ASIGNADOSA T1, ASIGNADOSB T2');
    SQL.Add('WHERE T1.SIERRAS = :PVALUE AND T2.SIERRAS = :PVALUE');
    ParamByName('PVALUE').Value := aValue;
    Open;
    Result := FieldByName('EXISTE').AsInteger > 0;
    Close
  end
end;

(* Ejemplo de llamada *)
...
begin
    if ExisteEnAmbas(Valor_Condicion) then
    ShowMessage('Existe')
  else
    ShowMessage('No existe');
...

Si deseas mostrar todas las ocurrencias que coincidan con un valor:
Código Delphi [-]
...
  with ZQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * '); // (O la selección de campos que desees)
    SQL.Add('FROM ASIGNADOSA T1, ASIGNADOSB T2');
    SQL.Add('WHERE T1.SIERRAS = :PVALUE AND T2.SIERRAS = :PVALUE');
    ParamByName('PVALUE').Value := Valor_Condicion;
    Open;
  end
...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 19-05-2013
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 13
jonydread Va por buen camino
muchisimas gracias el codigo o no me funciono o no supe ocuparlo pero me has dado una exelente referencia o idea y lo hice así y por separado
Código Delphi [-]
function TMainform.ExisteEnAmbas(aValue: Variant): Boolean;
begin
  with ZQuery1 do
  begin
    Close;
    SQL.Clear;
    sql.Text := 'SELECT * FROM AsignadosA where Sierras = :PVALUE';
    ParamByName('PVALUE').Value := aValue;
    Open;
   if not zquery1.IsEmpty then
   begin
    MessageDlg('Sierra ya se encuentra asignada', mtWarning, [mbOk],0);
     Abort;
      end else
      with ZQuery1 do
  begin
    Close;
    SQL.Clear;
    sql.Text := 'SELECT * FROM AsignadosB where Sierras = :PVALUE';
    ParamByName('PVALUE').Value := aValue;
    Open;
   if not zquery1.IsEmpty then
   begin
    MessageDlg('Sierra ya se encuentra asignada', mtWarning, [mbOk],0);
     Abort;
      end;
  end;
end;
end;

y el llamado
Código Delphi [-]
ExisteEnAmbas(dblookupcombobox1.KeyValue);

Gracias y saludos!!!
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
Consultar el primer registro de una tabla Jose Roman SQL 2 10-02-2010 23:30:00
problema al tratar de consultar un registro en firebird 1.5. El_Chava Firebird e Interbase 7 27-11-2008 13:45:07
saber que no existe registro de ese campo Petolansa SQL 4 31-07-2008 01:42:10
Consultar dos tablas y ordenar... Jose Roman SQL 4 05-04-2008 01:39:36
Consultar 2 tablas relacionadas mlara SQL 3 06-08-2003 10:08:26


La franja horaria es GMT +2. Ahora son las 18:41:55.


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