Ver Mensaje Individual
  #1  
Antiguo 23-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
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
Hola Vales.

Creo que el error se produce por la forma en que concantenas las constantes literales, más exáctamente la falta de espacios entre expresiones:
Código Delphi [-]
...from PACIENTES, LOCALIDADES, COBERTURAS_MEDICAS'+
   'where LOCALIDADES...
Ya que la cadena quedaría: "from PACIENTES, LOCALIDADES, COBERTURAS_MEDICASwhere LOCALIDADES..."

De todas formas te conviene acostumbrarte a utilizar parámetros para evitar la posibilidad de inyección SQL, por otro lado también es más óptimo.

Proba de este modo:
Código Delphi [-]
  with DM.Q_pac  do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT APELLIDO_Y_NOMBBRE, NUMERO_DOCUMENTO, EDAD, SEXO, LOCALIDAD,NOMBRE ');
    SQL.Add('FROM PACIENTES, LOCALIDADES, COBERTURAS_MEDICAS ');
    SQL.Add('WHERE LOCALIDADES.LOCALIDAD = :LOCALIDAD ');
    SQL.Add('AND COBERTURAS_MEDICAS.NOMBRE = :COBERTURA ');
    SQL.Add('AND LOCALIDADES.ID_LOC = PACIENTES.ID_LOC ');
    SQL.Add('AND COBERTURAS_MEDICAS.ID_COBER = PACIENTES.ID_COBER');
    ParamByName('LOCALIDAD').AsString:= loc.Text;
    ParamByName('COBERTURA').AsString:= cm.Text;
    Open;
  end;

Un saludo.

Edito: No había visto la respuesta del amigo newtron, pero como verás coincido con él en la apreciación.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 23-12-2011 a las 20:11:12.
Responder Con Cita