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

Conexion a dos tablas e la misma BD

Estas en el tema de Conexion a dos tablas e la misma BD en el foro de ASP Clásico en Foros del Web. Hola, estoy tratando de hacer un reporte de una base de datos, pero esos datos estan en varias tablas, hago la conexion a la primera ...
  #1 (permalink)  
Antiguo 17/10/2003, 12:37
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años, 1 mes
Puntos: 0
Conexion a dos tablas e la misma BD

Hola, estoy tratando de hacer un reporte de una base de datos, pero esos datos estan en varias tablas, hago la conexion a la primera e imprimo los datos y todo sale bien, pero a la hora de hacer la conexion con la segunda tabla no me abre la pagina, lo mas seguro es que no estoy haciendo bien la conexion o engo algo mal.

Primero hago la conexion la BD
.....
<%
Dim DBCONT, CONT
Set DBCONT = Server.CreateObject("ADODB.Connection")
Set CONT = Server.CreateObject("ADODB.RecordSet")
DBCONT.Mode = adModeReadWrite
DBCONT.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("base.mdb"))

nombre= Request ("valor")
SQLCONT="SELECT * FROM contribuyente WHERE id_1= '"&nombre&"' "
CONT.Open SQLCONT ,DBCONT

%>
....
imprimo los datos en diferentes celdas:
.....
<td width="21%">
<% Response.Write CONT("nombre")%>
</td>
......
Cierro la conexion y la vuelvo a hace para la siguiente tabla:
.....
<%
CONT.Close

DBCONT.Close

Set DBCONT = Nothing
Set CONT = Nothing
%>

</center>
<%
Dim DBIMP, IMPUE
Set DBIMP = Server.CreateObject("ADODB.Connection")
Set IMPUE = Server.CreateObject("ADODB.RecordSet")
DBIMP.Mode = adModeReadWrite
DBIMP.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("base.mdb"))

nombre= Request ("valor")
SQLIMP="SELECT * FROM impuestos WHERE id_1= '"&nombre&"' "
IMPUE.Open SQLIMP ,DBIMP

%>



Aqui es donde creo que esta elerror, no me dice que tipo de eeror es solo no muestra la pagina.


que me sugieren? que no cierre la conexion? que haga un inner join?

Gracias.
  #2 (permalink)  
Antiguo 17/10/2003, 12:42
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 7 meses
Puntos: 0
y por que no juntas las cosas?

<%
Dim DBCONT, CONT
Set DBCONT = Server.CreateObject("ADODB.Connection")
Set CONT = Server.CreateObject("ADODB.RecordSet")
DBCONT.Mode = adModeReadWrite
DBCONT.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("base.mdb"))

nombre= Request ("valor")
SQLCONT="SELECT * FROM contribuyente WHERE id_1= '"&nombre&"' "
CONT.Open SQLCONT ,DBCONT

%>
....
imprimo los datos en diferentes celdas:
.....
<td width="21%">
<% Response.Write CONT("nombre")%>
</td>

</center>
<%
nombre= Request ("valor")
SQLIMP="SELECT * FROM impuestos WHERE id_1= '"&nombre&"' "
CONT.Open SQLIMP ,DBCONT


CONT.Close

DBCONT.Close

Set DBCONT = Nothing
Set CONT = Nothing
  #3 (permalink)  
Antiguo 17/10/2003, 18:06
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años, 1 mes
Puntos: 0
Gracias bakanzipp por contestar, se me hace buena idea lo que me comentas no se me habia ocurrido.

Hice la prueba y me marca el sigueinte error:
ADODB.Recordset error '800a0e79'

Operation is not allowed when the object is open.

en la linea donde tengo:
CONT.Open SQLIMP ,DBCONT

ando medio perdido.
jeje (medio?)

gracias
  #4 (permalink)  
Antiguo 17/10/2003, 18:22
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
La operación no se permite si el objeto está abierto, es decir, no puedes abrir algo que esté abierto ya...solo necesitas cerrar el recordset antes de tratar de abrirlo de nuevo

imprimo los datos en diferentes celdas:
.....
<td width="21%">
<% Response.Write CONT("nombre")%>
</td>
<%
CONT.CLose
%>
</center>
<%
nombre= Request ("valor")
SQLIMP="SELECT * FROM impuestos WHERE id_1= '"&nombre&"' "
CONT.Open SQLIMP ,DBCONT


CONT.Close

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 17/10/2003, 18:39
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años, 1 mes
Puntos: 0
Gracias, ya funciona.
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 01:09.