Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2011
Avatar de alej.villa
alej.villa alej.villa is offline
Miembro
NULL
 
Registrado: may 2011
Ubicación: Caracas, Venezuela
Posts: 76
Poder: 13
alej.villa Va por buen camino
Question Instrucción SQL UNION funciona en MS SQL Server pero no en DELPHI 7

Buenos días amigos, mi pregunta es la siguiente porque la instrucción que coloco en SQL Server funciona sin problemas y esa misma instrucción la coloco en Delphi y no da el mismo resultado?

NOTA: Los datos que estoy consultando son diferentes en las dos tablas, en SQL Server los resultados son correctos utilizando la intrucción UNION y UNION ALL y en delphi no son los mismos utilizando esas mismas intrucciones.

si alguien les ha pasado algo similar o sabe como resolverlo se los agradecería.

el código SQL de la instrucción que uso es:
Código SQL [-]
SELECT     cedula
FROM         Empleados
WHERE     (turno = 'MEGATURNO')
UNION
SELECT     cedula
FROM         Turno_Temporal
WHERE     (turno_temp = 'MEGATURNO') AND (estado = 'activo')


el código que uso la misma intrucción pero en Delphi es:
Código Delphi [-]
  dm.Query.SQL.Add('SELECT cedula FROM empleados WHERE turno = :xfiltro');
  dm.Query.SQL.Add('UNION');
  dm.Query.SQL.Add('SELECT cedula FROM Turno_Temporal WHERE turno_temp = :xfiltro AND estado = :type');
  DM.Query.Parameters.ParamByName('xfiltro').DataType:=ftString;
  dm.Query.Parameters.ParamByName('xfiltro').Value:=ComboBox1.Text;
  DM.Query.Parameters.ParamByName('type').DataType:=ftString;
  dm.Query.Parameters.ParamByName('type').Value:='activo';
Responder Con Cita
  #2  
Antiguo 02-11-2011
Avatar de alej.villa
alej.villa alej.villa is offline
Miembro
NULL
 
Registrado: may 2011
Ubicación: Caracas, Venezuela
Posts: 76
Poder: 13
alej.villa Va por buen camino
Smile Solucionado

Listo amigos ya solucione mi problema el detalle estaba que debia utilizar otro parametro para el turno_temp y no el mismo que usaba con el turno.


quedando mi codigo de esta manera
Código Delphi [-]
  dm.Query.SQL.Add('SELECT cedula FROM empleados WHERE turno = :xfiltro');   dm.Query.SQL.Add('UNION');   dm.Query.SQL.Add('SELECT cedula FROM Turno_Temporal WHERE turno_temp = :yfiltro AND estado = :type');   DM.Query.Parameters.ParamByName('xfiltro').DataType:=ftString;   dm.Query.Parameters.ParamByName('xfiltro').Value:=ComboBox1.Text;
  DM.Query.Parameters.ParamByName('yfiltro').DataType:=ftString;   dm.Query.Parameters.ParamByName('yfiltro').Value:=ComboBox1.Text;     DM.Query.Parameters.ParamByName('type').DataType:=ftString;   dm.Query.Parameters.ParamByName('type').Value:='activo';
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
funciona bien en windows 7 64b pero en XP no funciona ASAPLTDA Varios 5 06-05-2011 16:24:50
Funciona. Pero estará bién?. Time con SQL Server 2005 Carmelo Cash SQL 3 19-01-2009 18:32:50
Instalo SQL Server 2000 pero el Delphi no lo reconoce.... Roilo MS SQL Server 4 17-05-2007 15:45:42
algo basico pero no me funciona Yoli Conexión con bases de datos 1 02-04-2005 15:12:07
No me funciona la instruccion libc.system() athal Lazarus, FreePascal, Kylix, etc. 2 29-06-2004 22:07:36


La franja horaria es GMT +2. Ahora son las 01:51:38.


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