| ID | Asunto | Fecha | Nick | |
| 51984 | Problema Planteado un Query con Outer Joins en un DataSet | 01/03/10 12:05 | joanca | |  |
Hola buenos días a todos/as.
A partir de un query como el siguiente que intento lanzar dentro del "Generador de Consultas de un DataSet", en donde para las Tabla2 y Tabla3 pueden o no tener los registros relacionados, de ahí que ponga según mi criterio el "LEFT OUTER JOIN", y para la Tabla4 siempre ha de existir de ahí que ponga el "INNER JOIN", se me producen las siguientes preguntas:
SELECT Tabla1.ListaCampos FROM Tabla1 LEFT OUTER JOIN Tabla2 ON Tabla1.Codigo1 = Tabla2.Codigo AND Tabla2.Activo = 1 LEFT OUTER JOIN Tabla3 ON Tabla1.Codigo2 = Tabla3.Codigo AND Tabla3.Activo = 1 INNER JOIN Tabla4 ON Tabla1.Codigo3 = Tabla4.Codigo AND Tabla4.Activo = 1 WHERE (Tabla1.Activo = 1)
(1) En caso de existir los registros en Tabla2 y/o Tabla3 siempre me los muestra aunque el Campo "Activo = 0", es decir, el LEFT OUTER JOIN no lo tengo bien planteado y la verdad es que no se como hacerlo.
(2) Dentro del Generador de Consultas de un DataSet al Ejecutar la Consulta funciona bien, pero al salir aceptando nos pregunta:
¿ Desea volver a generar los comandos basándose en el texto del nuevo comando ? (Se reemplazarán los comandos de actualización actuales) -> Contesto "Si".
Error al procesar el texto del nuevo comando, la generación SQL dinámica no es compatible con varias tablas de base. ¿ Desea utilizar el nuevo comando de todas formas ? Contesto "Si ".
Y se reemplaza sin problemas en la vista del DataSet "fichero.xsd", y funciona con el error de lógica planteado en el punto (1).
Si alguien tiene idea de las dos preguntas se lo agradezco de antemano.
Gracias y un saludo.
|