Foros del Web » Programando para Internet » ASP Clásico »

se puede hacer una conexión a 2 tablas al mismo tiempo dentro de una misma DB

Estas en el tema de se puede hacer una conexión a 2 tablas al mismo tiempo dentro de una misma DB en el foro de ASP Clásico en Foros del Web. Saludos a todos: Necesito hacer una consulta a dos tablas pertenecientes a una misma base de datos. Tengo que hacer una conexión doble o pongo ...
  #1 (permalink)  
Antiguo 01/12/2003, 13:03
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años
Puntos: 0
se puede hacer una conexión a 2 tablas al mismo tiempo dentro de una misma DB

Saludos a todos:
Necesito hacer una consulta a dos tablas pertenecientes a una misma base de datos.
Tengo que hacer una conexión doble o pongo la sentencia SQL de consulta directamente.
Gracias
  #2 (permalink)  
Antiguo 01/12/2003, 13:08
 
Fecha de Ingreso: octubre-2003
Ubicación: Pucela
Mensajes: 182
Antigüedad: 20 años, 8 meses
Puntos: 0
¿Por que tienes que hacer una consulta a dos tablas a la vez?¿Es que guardan relacion entre ellas?¿O quiere que se cumplan datos de una y otra?
Si guardan relacion entre ellas, ¿por que no haces un inner join?
Explica un poco más please para poderte ayudar
__________________
El pasado ya ha pasado y el futuro todavía no ha pasado, es decir, vive el presente.
  #3 (permalink)  
Antiguo 02/12/2003, 05:05
 
Fecha de Ingreso: noviembre-2002
Mensajes: 80
Antigüedad: 21 años, 6 meses
Puntos: 0
Debes tener una sola conexion por base de datos. Dentro de esa conexion puedes establecer tantos objetos recordset como quieras, incluyendo en cada instruccion SQL referencias a una tabla o a las tablas que quieras mediante inner join.

Ejemplo:

Set objConnection=Server.CreateObject("ADODB.Connectio n")
objConnection.Open "nombrebasedatosenODBC"

fraseSQL="SELECT ID_TEMA FROM SESIONES WHERE(ID_SESION='" & misesion & "');"
Set rssesion = Server.CreateObject("ADODB.Recordset")
Set rssesion=objConnection.Execute(fraseSQL)

'Tambien puedes hacer sobre la misma conexion otro select con inner join que asu vez no incluya registros de otro select (Not in (SELECT ....

fraseSQL="SELECT PREGUNTAS_SESION.*, PREGUNTAS.* "
fraseSQL=fraseSQL & "FROM PREGUNTAS_SESION INNER JOIN PREGUNTAS ON PREGUNTAS_SESION.COD_PREG = PREGUNTAS.COD_PREG "
fraseSQL=fraseSQL & "WHERE (((PREGUNTAS_SESION.USUARIO_PREG)<>" & usuario & ") AND ((PREGUNTAS_SESION.ID_SESION)='" & misesion & "') AND ((PREGUNTAS_SESION.ESTADO_PREG)=1) AND "
fraseSQL=fraseSQL & "((PREGUNTAS_SESION.COD_PREG) Not In (SELECT COD_PREGUNTA FROM RECHAZOS_ACIERTOS WHERE(RECHAZOS_ACIERTOS.ID_SESION='" & misesion & "' "
fraseSQL=fraseSQL & "AND COD_USUARIO=" & usuario & " AND RECHAZOS_ACIERTOS.TERMINADA=1))));"
Set rspreg = Server.CreateObject("ADODB.Recordset")
Set rspreg=objConnection.Execute(fraseSQL)

Salu2.
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 00:03.