No me resulta la instrucción SQL

Soy nuevo en access, y quiero meterme de lleno en esto y en sql.
Me hice una base de datos de mis películas, con las tablas:
Películas, Actores, Directores.
Estoy haciendo una consulta en Vista SQL es de esta forma:
SELECT Peliculas.NombrePeli, Peliculas.Ano, Peliculas.Puntaje, Peliculas.Genero, Actores.NombreActor, Actores.Pais
FROM Peliculas INNER JOIN Actores ON Peliculas.IdActor = Actores.idActor where Peliculas.Puntaje ="7";
Donde lo que quiero es mostrar los datos de las películas que para mi han obtenido un puntaje de 7 de 10.
Bueno, es un ejemplo que me ayudara a crear consultas entre dos o más tablas.
Pero esa instrucción tiene una falla que no la encuentro porque le doy a ejecutar y no me da ninguna respuesta.
Que puede ser.
Je, lo otro es que cuando agregue las tablas en modo diseño, entre estas se puso una línea que debiera haber sido una relación una a varias(por lo que he leído) entre actores y películas, pero solo me dibuja la linea de la tabla Actores a la Tabla Películas, pero no me figura ningún símbolo infinito, ¿cómo he visto en algunos manuales?.
Ah la relación está por el campo idActor

3 Respuestas

Respuesta
1
where Peliculas.Puntaje ="7";
Donde lo que quiero es mostrar los datos de las películas que para mi han obtenido un puntaje de 7 de 10.
----
Podrías probar a cambiar
where Peliculas.Puntaje ="7";
por
where Peliculas.Puntaje >="7" and where Peliculas.Puntaje =<"10";
----
O bien por
where Peliculas.Puntaje between "7" and "10";
Lo otro si quieres lo consultas de nuevo, pero aparte
Salud.
Respuesta
1
Así a simple vista, sólo se me ocurren dos motivos por los que te pueda fallar la consulta:
1.- Si el puntaje es un valor numérico, quita las commillas de la clausula where de la consulta.
2.- Supongo que idActor es autonumérico en la tabla Actores. Asegúrate de que no lo es en la tabla Películas (debe ser un número entero largo).
De todas formas, me inclino más por la 1ª causa.
Si los haces y no se arregla, para buscar de dónde te viene el fallo, puedes comenzar por quitar la clausula where.
Para que te aparezcan los 1 e infinitos tienes que asignar relaciones de integridad entre las tablas. Esto se hace mediante los Diagramas.
En el caso de las tablas que citas, idActor debe ser Clave Principal en la Tabla Actores e indice con duplicados en la tabla Películas.
Cuando dices que tengo que asignar relaciones de integridad entre las tablas, y que eso se hace mediante los diagramas, podrías explicarte o al menos que me indiques como consigo llegar a los diagramas que tu mencionas.
La verdad es que me ha resultado todo hasta el momento, pero ahora quede metido con el asunto de las relaciones...
Yo les hago clic con el botón derecho y me aparece un cuadro de dialogo con algunas indicaciones, y entre esas dice uno a varios, pero resulta que no me sale graficado. Solo me sale una linea que va de la tabla Actores a la tabla películas por el campo idActor.
Gracias, Saludos
En el Menu Herramientas->Diagramas (puede estar traducudo como Herramientas->Relaciones ya que en inglés es Tools->Relationships").
Te aparece una ventana en blanco en la que añades las Tablas y Consultas que quieras relacionar entre sí.
Cuando relacionas dos tablas, te aparece un cuadro de diálogo en el que dices si deseas establecer integridad referencial, etc...
Respuesta
Siento no haberte contestado antes, pero últimamente he estado un poco liadillo.
Bueno no se si ya tendrá una respuesta o una solución a tu pregunta. Si no es así dímelo que intentaremos entre los dos resolverlo.
1 saludo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas