Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Access, SQL, ASP...

Estas en el tema de Access, SQL, ASP... en el foro de Bases de Datos General en Foros del Web. He posteado el mensaje en ASP pero como tb es cosas de la consulta con la BD a ver si alguien puede echarme una mano: ...
  #1 (permalink)  
Antiguo 13/03/2003, 15:25
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
Access, SQL, ASP...

He posteado el mensaje en ASP pero como tb es cosas de la consulta con la BD a ver si alguien puede echarme una mano:


Cita:
tengo un problema al recuperar datos de un BD en access dsd ASP:

tengo varias tablas, relacionadas entre si por unos IDs

La tabla principal es de peliculas y tengo otras relacionadas con esta, por ejemplo actores... como hago para sacar toda la informacion q contiene la tabla peliculas y los actores de esa pelicula??

Al usar un INNER JOIN me aparecen:

campos de [peliculas]: titulo, titulooriginal...
campos de [actores]: nombreactor...

titulo.............titulooriginal.............nomb reactor
---------------------------------------------------------
matrix...........the matrix.................actor1
matrix...........the matrix.................actor2
matrix...........the matrix.................actor3


como puedo recorrer estos registros???
se puede hacer asi? o necesito varias consultas??

como es mejor?

gracias x leer hasta el punto final -> ·





__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
  #2 (permalink)  
Antiguo 13/03/2003, 17:50
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Yo te recomiendo hacer dos recordsets, uno que te regrese los datos de la pelicula, y otro para traerte los datos adicionales, basado en el ID de la pelicula.

__________________
Manoloweb
  #3 (permalink)  
Antiguo 14/03/2003, 08:40
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
???????????????

como lo hago???

ahora estoy utilizando un unico recordset y lo recorro con un while en el q distingo si hay info duplicada

un apaño provisional

como lo hago con 2 recordset?
__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
  #4 (permalink)  
Antiguo 14/03/2003, 10:55
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 4 meses
Puntos: 1
Pues yo no entendi, por que no pones la estructura de tus tablas.

Saludos
  #5 (permalink)  
Antiguo 14/03/2003, 14:10
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
+ info

voy a poner solo un par de campos de las tablas:

[peliculas] - relación 1 a N con - [actores]

[PELICULAS]
ID_PELICULA
TITULO

[ACTORES_PELIS]
ID_ACTOR
ID_PELICULA

[ACTORES]
ID_PELICULA
NOMBRE

necesito mostrar los actores correspondientes a la pelicula (entre otros) actualmente lo realizo con JOIN y me crea:

ID_PELICULA.............TITULO...........ID_ACTOR. .........NOMBRE
1................................MATRIX........... 1.......................nombre1
1................................MATRIX........... 2.......................nombre2
1................................MATRIX........... 3.......................nombre3
1................................MATRIX........... 4.......................nombre4

recorro el recordset almacenando en una variable los nombres
mucho dato duplicado, la cosa se complica cuando ad+ de los nombres de los actores q aparecen en esa pelicula, muestro los comentarios de usuarios en los peliculas (otra 1 a N con otra tabla) y los premios q ha recibido


mejor explicado? espero q sip...

P.D. -> a las 21:00h del 14 de marzo puedes ver algo aki:
www.portalurbano.com/cine

una version con un "apaño" q funciona pero q no se si se puede programar mejor, actualmente recorro con un while almacenando los datos en variables para despues mostrarlas
__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
  #6 (permalink)  
Antiguo 14/03/2003, 14:25
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 4 meses
Puntos: 1
El que la consulta te traiga esos "datos duplicados" no tiene nada de malo. Malo sería que tu BD estuviera mal normalizada y guardaras esos datos duplicados. Entonces si sería un prolema
  #7 (permalink)  
Antiguo 14/03/2003, 16:02
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
sip

sip, normaliza todo ok, los datos no se duplican

pero ahora como los manejo para q no me salgan duplicados, lohe logrado mas o menos como ya he dixo con un while pero no se si es la mejor manera de programar

algun consejo?
__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
  #8 (permalink)  
Antiguo 14/03/2003, 21:04
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 4 meses
Puntos: 1
Pues se arregla en realidad con algo de programación

do while not rs.eof
if idpelicula<>temp then
Response.Write("nombrepelicula")
End If
Response.Write ("autor")
temp=rs("idpelicula")
rs.movenext
loop

Con algo asi nada mas te desplegaría una vez el nombre y id de la pelicula, supongo que eso es a lo que te refieres.

Saludos
  #9 (permalink)  
Antiguo 15/03/2003, 10:21
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
siiiiiiiiiip

asi lo habia solucionado pero no sabia si era la mejor manera de programarlo

ahora ya se q siiiii :cantar:


q satisfaccion da q se le ocurran a uno soluciones d este tipo

www.portalurbano.com/cine

ya avisaré cuando este disponible una version mas o menos decente con más datos en la BBDD


graciassssssssssss
__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
  #10 (permalink)  
Antiguo 15/03/2003, 10:24
Avatar de sanfermin  
Fecha de Ingreso: diciembre-2001
Mensajes: 601
Antigüedad: 22 años, 4 meses
Puntos: 2
x cierto

a todo esto lo habia solucionado guardando datos en una variable

cierro la conexion a la BBDD en cuanto tengo los datos y luego los muestro
__________________
MainMind.com
La blasfemia es el único lenguaje que de verdad conocen todos los programadores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:19.