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

[SOLUCIONADO] Usar Tablas temporales SQL server en ASP

Estas en el tema de Usar Tablas temporales SQL server en ASP en el foro de ASP Clásico en Foros del Web. Hola a todos, tengo un problema que quizas alguien sepa: Quiero utilizar tablas temporales en ASP y mostrar los resultados del script, el codigo es ...
  #1 (permalink)  
Antiguo 20/10/2010, 12:08
 
Fecha de Ingreso: octubre-2010
Ubicación: La Paz Bolivia
Mensajes: 18
Antigüedad: 13 años, 5 meses
Puntos: 1
Usar Tablas temporales SQL server en ASP

Hola a todos, tengo un problema que quizas alguien sepa:

Quiero utilizar tablas temporales en ASP y mostrar los resultados del script, el codigo es el siguiente:

Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.open "PROVIDER=SQLOLEDB;DATA SOURCE=*****;UID=***;PWD=****;DATABASE=****"
Set rsDatos = Server.CreateObject("ADODB.Recordset")
strSQL = "DECLARE @TablaTemporal TABLE (sigla nvarchar(500), rubro nvarchar(500)); insert into @TablaSigla (sigla, rubro) selcet sigla, rubro from tablafuente; select * from @TablaSigla"
rsDatos.Open strSQL, adoCon '<---Linea del error (linea 172)

Do While not rsDatos.EOF

response.write(rsDatos("sigla")&"-"&rsDatos("rubro")&"<br>")

rsDatos.MoveNext

Loop

rsDatos.Close
Set rsDatos= Nothing
Set adoCon = Nothing


Pero me muestra el siguiente error al ejecutar:

Error Type:
ADODB.Recordset (0x800A0E78)
Operation is not allowed when the object is closed.
/revcedemge.asp, line 172


si ejecuto el script SQL en el visor de consultas de SQL Server funciona, me muestra los resultados asi que el SQL script no es el problema

y si cambio el script SQL a digamos SELECT * from tablafuente funciona tanto en el explorador como en el visor SQL asi que la conexión y programación es correcta

Me he roto la cabeza tratando de encontrar el problema y nada

Si alguien me puede ayudar estaria muy agradecido
  #2 (permalink)  
Antiguo 20/10/2010, 14:25
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 2 meses
Puntos: 146
Respuesta: Usar Tablas temporales SQL server en ASP

No estoy seguro que no se puedan utilizar tablas temporales, no tengo chance de comprobarlo, pero lo que pusieras hacer que si te funcionaría es meter ese script en un procedimiento almacenado y llenar el RecordSet con el resultado de dicho SP.

Saludos
  #3 (permalink)  
Antiguo 21/10/2010, 15:31
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 3 meses
Puntos: 98
Respuesta: Usar Tablas temporales SQL server en ASP

Tampoco se si se puede hacerlo de esta manera aunque me imagino que es posible, a simple vista veo que tienes un par de errores:

Código:
strSQL = "CREATE TABLE  #TablaTemporal (sigla nvarchar(500), rubro " & _
"nvarchar(500)); insert into #TablaTemporal  (sigla, rubro) selcet sigla, rubro from tablafuente; " & _
"select * from #TablaTemporal ;DROP TABLE #TablaTemporal"
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #4 (permalink)  
Antiguo 12/11/2010, 12:46
 
Fecha de Ingreso: octubre-2010
Ubicación: La Paz Bolivia
Mensajes: 18
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Usar Tablas temporales SQL server en ASP

Probé ese metodo también y me muestra el mismo error, gracias de todos modos


Cita:
Iniciado por u_goldman Ver Mensaje
Tampoco se si se puede hacerlo de esta manera aunque me imagino que es posible, a simple vista veo que tienes un par de errores:

Código:
strSQL = "CREATE TABLE  #TablaTemporal (sigla nvarchar(500), rubro " & _
"nvarchar(500)); insert into #TablaTemporal  (sigla, rubro) selcet sigla, rubro from tablafuente; " & _
"select * from #TablaTemporal ;DROP TABLE #TablaTemporal"
  #5 (permalink)  
Antiguo 12/11/2010, 12:47
 
Fecha de Ingreso: octubre-2010
Ubicación: La Paz Bolivia
Mensajes: 18
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Usar Tablas temporales SQL server en ASP

Gracias, no conocia los procedimientos almacenados, los estudié, lo apliqué y funciona de mil maravillas, muchas Gracias!!!!

Cita:
Iniciado por Myakire Ver Mensaje
No estoy seguro que no se puedan utilizar tablas temporales, no tengo chance de comprobarlo, pero lo que pusieras hacer que si te funcionaría es meter ese script en un procedimiento almacenado y llenar el RecordSet con el resultado de dicho SP.

Saludos

Etiquetas: asp, closed, tablas, temporales, sql-server
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 16:29.