Inner Join. Error en consulta de selección.

Esta vez vengo con problemas de consultas.

Te comento lo que quiero hacer:
Quiero imprimir una ficha para lo cual necesito información de 3 tablas:
Voluntarios, prestamos, stockmateriales.

STOCKMATERIALES y PRESTAMOS tienen en común el CodMaterial.
PRESTAMOS y VOLUNTARIOS están unidos por el NumVoluntario.
He hecho esta consulta:

RsFicha. Open "SELECT Voluntarios.NumVoluntario, Voluntarios.ApeVol, Voluntarios.NomVol, Prestamos.NumPrestamo, Prestamos.Cantidad, Prestamos.FechaPrestamo, Prestamos.FechaDevolucion, stockmateriales.DescripcionMaterial
FROM PRESTAMOS INNER JOIN VOLUNTARIOS ON VOLUNTARIOS.NumVoluntario =
PRESTAMOS.NumVoluntario) INNER JOIN STOCKMATERIALES ON (PRESTAMOS.CodMaterial =
Stockmateriales. CodMaterial WHERE NumPrestamo LIKE '" + txtNumeroConstPrestamo.Text + "'", Base, adOpenStatic, adLockOptimistic

pero me lanza el error:
Error de sintaxis (falta operador) en la
expresión de consulta ‘VOLUNTARIOS.NumVoluntario = PRESTAMOS.NumVoluntario
INNER JOIN STOCKMATERIALES ON PRESTAMOS.CodMaterial = STOCKMATERIALES.CodMaterial

No me doy cuenta donde van esos paréntesis.

1 respuesta

Respuesta
1

Cambia

VOLUNTARIOS.NumVoluntario = PRESTAMOS.NumVoluntario)

Por

(VOLUNTARIOS.NumVoluntario = PRESTAMOS.NumVoluntario)

Nota que no pusiste el paréntesis de apertura.

Me comentas.

Amigo. GRACIAS POR RESPONDER!! Le he puesto parentésis y me sigue tirando el mismo error.

Esta es la nueva cadena:

rsFicha.Open "SELECT Voluntarios.NumVoluntario,Voluntarios.ApeVol,Voluntarios.NomVol,Prestamos.NumPrestamo,Prestamos.Cantidad,Prestamos.FechaPrestamo,Prestamos.FechaDevolucion,stockmateriales.DescripcionMaterial FROM PRESTAMOS INNER JOIN VOLUNTARIOS ON (VOLUNTARIOS.NumVoluntario = PRESTAMOS.NumVoluntario) INNER JOIN STOCKMATERIALES ON (PRESTAMOS.CodMaterial = STOCKMATERIALES.CodMaterial) WHERE NumPrestamo LIKE '" + txtNumeroConstPrestamo.Text + "'", Base, adOpenStatic, adLockOptimistic 

Gracias nuevamente. Espero me puedas dar una mano. Saludos.

Verificando si puedo responder.

OK. Muchas gracias!! Saludos.

Todoexpertos está teniendo problemas para que yo pueda responder, están que reparan eso, en cuanto pueda te respondo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas