Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-01-2017
koalasoft koalasoft is offline
Miembro
 
Registrado: oct 2004
Ubicación: Tenosique Tabasco
Posts: 86
Poder: 20
koalasoft Va por buen camino
Gracias por responder ..

Hice lo que mencionas, lo cambié por esto...

Código PHP:
   SQL.Add('SELECT * FROM CTRLONT CTRL ');
   
SQL.Add('join CLIENTES CL on CTRL.FOLIO = CL.FOLIO ');
   
SQL.Add('join ONTs ONT on CTRL.FOLIO = ONT.Folio ');
   
SQL.Add('WHERE CTRL.BOARD_ONT= :BOARD_ONT');        // Aquí marca el error
   
SQL.Add(' AND CTRL.FRAME_ID= :FRAME_ID');
   
SQL.Add(' AND CTRL.SLOT_ID= :SLOT_ID');
   
SQL.Add(' AND CTRL.PORT_ID= :PORT_ID');
   
SQL.Add(' AND CTRL.ONT_ID= :ONT_ID'); 
Ya que la búsqueda correponde a la tabla CTRLONT, pero en la misma línea WHERE me sigue marcando el mismo error.
Responder Con Cita
  #2  
Antiguo 31-01-2017
aposi aposi is offline
Miembro
 
Registrado: dic 2006
Posts: 146
Poder: 18
aposi Va por buen camino
la tabla ONT se llama ONT o ONTs?

En el Query que funcionava se llama ONT
Código Delphi [-]
SQL.Add('join ONT.db ONT on CTRL.FOLIO = ONT.Folio ');
Y en el nuevo ONTs
Código Delphi [-]
SQL.Add('join ONTs ONT on CTRL.FOLIO = ONT.Folio ');
Responder Con Cita
  #3  
Antiguo 31-01-2017
koalasoft koalasoft is offline
Miembro
 
Registrado: oct 2004
Ubicación: Tenosique Tabasco
Posts: 86
Poder: 20
koalasoft Va por buen camino
Cita:
Empezado por aposi Ver Mensaje
la tabla ONT se llama ONT o ONTs?

En el Query que funcionava se llama ONT
Código Delphi [-]
SQL.Add('join ONT.db ONT on CTRL.FOLIO = ONT.Folio ');
Y en el nuevo ONTs
Código Delphi [-]
SQL.Add('join ONTs ONT on CTRL.FOLIO = ONT.Folio ');
Ahora se llama ONTs la tabla, pero pasa algo curioso, quite estas líneas:

Código PHP:
SQL.Add(' AND CTRL.FRAME_ID= :FRAME_ID'); 
   
SQL.Add(' AND CTRL.SLOT_ID= :SLOT_ID'); 
   
SQL.Add(' AND CTRL.PORT_ID= :PORT_ID'); 
   
SQL.Add(' AND CTRL.ONT_ID= :ONT_ID'); 
Dejando la consulta de esta forma:

Código PHP:
SQL.Add('SELECT * FROM CTRLONT ');  
SQL.Add('WHERE BOARD_ONT= :BOARD_ONT'); 
Y de nuevo en la segunda línea donde esta el WHERE me marca el mismo error.
Responder Con Cita
  #4  
Antiguo 31-01-2017
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Buen día.

... información de interés ~ Using parameters with ADO Query (mysql/MyConnector) - StackOverflow
-
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
  #5  
Antiguo 31-01-2017
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Una pregunta...

el campo BOARD_ONT es de la tabla CTRLONT ?

Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #6  
Antiguo 31-01-2017
koalasoft koalasoft is offline
Miembro
 
Registrado: oct 2004
Ubicación: Tenosique Tabasco
Posts: 86
Poder: 20
koalasoft Va por buen camino
Cita:
Empezado por fjcg02 Ver Mensaje
Una pregunta...

el campo BOARD_ONT es de la tabla CTRLONT ?

Saludos
Asi es estimado !! es un campo de la Tabla CTRLONT de tipo INT [int(11)] de la BD Mysql.
Responder Con Cita
  #7  
Antiguo 31-01-2017
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Hola, lo normal es asignar la sql y luego dar valor a los parámetros, es decir, después de hacer query.Sql.Add(), defines el valor del parámetro. Yo creo que no hace falta declararlo, solamente asignarle el valor.

Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #8  
Antiguo 31-01-2017
koalasoft koalasoft is offline
Miembro
 
Registrado: oct 2004
Ubicación: Tenosique Tabasco
Posts: 86
Poder: 20
koalasoft Va por buen camino
Gracias por el dato .. intenté con esto ...

Código PHP:
with ADOQueryCtrlONT.Parameters.AddParameter do
    
begin
      Name 
:= 'BOARD';
      
DataType := ftInteger;
    
end;

with ADOQueryCtrlONT do          // Busqueda por Modelo y Tipo
 
begin
   Close
;
   
SQL.Clear;
   
SQL.BeginUpdate;
   
SQL.Add('SELECT * FROM CTRLONT ');
   
SQL.Add('WHERE BOARD_ONT = :BOARD');
   
Open;
...
.. 
Pero me sigue mandando el mismo mensaje en la línea donde tiene el WHERE ..

Una pregunta tendrá algo que ver el tipo de datos que tenga definida en la BD, ya que el campo BOARD_ONT es de tipo Int(11) en la BD Mysql.
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
conflicto entre aplicaciones zajoma Tablas planas 3 27-05-2008 17:48:58
Conflicto entre puertos jsanchez API de Windows 2 07-09-2007 00:37:17
Conflicto entre nospE y eagS marcoszorrilla La Taberna 3 09-01-2007 18:34:23
Query entre dos tablas de distintas databases tefots Firebird e Interbase 2 06-11-2006 15:28:29
Conflicto entre Query y Tabla filtrada Michael Varios 2 20-05-2004 21:37:43


La franja horaria es GMT +2. Ahora son las 10:15:04.


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