Problema con el método recordset.save

07/11/2005 - 19:33 por erb | Informe spam
Hola amigos,
Tengo una página web en asp que recoge los datos de una base SQL
Server. Para reducir la transferencia he intentado guardar el recordset
con la intención de hacer una especie de cache. El problema surge al
intentar guardar ya que me da Provider error '80030103' No se puede
guardar.
La carpeta en que se guardaría el archivo tiene permisos de escritura
y lectura. La versión del ADO del servidor es la 2.8. El código
funciona correctamente hasta que se añade el método save.

ruta=Server.MapPath("/records/Noticia.dat")
...
Set rsNoticia = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM TBL_Noticias WHERE Activa= 1 ;"
rsNoticia.Open strSQL, adoCon, 3, 3
rsNoticia.Save ruta
...
rsNoticia.Close
set rsNoticia= nothing

Os agradecería vuestra ayuda.

Preguntas similare

Leer las respuestas

#1 erb
07/11/2005 - 20:51 | Informe spam
Hola Matías,
La verdad es que no lo se ya que la página está alojada en un
servidor compartido del proveedor (Arsys). Este permiso ¿lo tienen que
poner ellos o hay alguna forma de activarlo desde fuera del servidor? y
¿cómo puedo saber si está activado o no?
Gracias por tu respuesta.
Respuesta Responder a este mensaje
#2 Matías Iacono
08/11/2005 - 00:15 | Informe spam
Se que haz dicho que la carpeta tiene permisos de escritura y lectura, pero,
por las dudas, el usuario IUSER_NOMBREMAQUINA tiene permisos sobre esa
carpeta tambien?

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"erb" escribió en el mensaje
news:
Hola amigos,
Tengo una página web en asp que recoge los datos de una base SQL
Server. Para reducir la transferencia he intentado guardar el recordset
con la intención de hacer una especie de cache. El problema surge al
intentar guardar ya que me da Provider error '80030103' No se puede
guardar.
La carpeta en que se guardaría el archivo tiene permisos de escritura
y lectura. La versión del ADO del servidor es la 2.8. El código
funciona correctamente hasta que se añade el método save.

ruta=Server.MapPath("/records/Noticia.dat")
...
Set rsNoticia = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM TBL_Noticias WHERE Activa= 1 ;"
rsNoticia.Open strSQL, adoCon, 3, 3
rsNoticia.Save ruta
...
rsNoticia.Close
set rsNoticia= nothing

Os agradecería vuestra ayuda.
Respuesta Responder a este mensaje
#3 Matías Iacono
08/11/2005 - 02:19 | Informe spam
Pues, si o si tienen que ponerlo ellos.

Ahora, por lo general, si es un servidor de terceros, te dan un directorio
fuera del sitio web donde, por un lado, se coloca la DB, si es access, y
como access necesita de estos permisos, entonces esta con ellos.

El problema de los servidores de terceros, es que, por politicas de
seguridad, no te dejan hacer nada de nada fuera de tu espacio, ya que, con
ASP, podrias eliminar partes vitales del servidor.

Prueba si lo que estas haciendo funciona en tu maquina de manera local. Si
lo hace, entonces esta mas que claro que no tienes permisos de escritura
sobre el directorio que quieres acceder en el servidor de terceros.

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"erb" escribió en el mensaje
news:
Hola Matías,
La verdad es que no lo se ya que la página está alojada en un
servidor compartido del proveedor (Arsys). Este permiso ¿lo tienen que
poner ellos o hay alguna forma de activarlo desde fuera del servidor? y
¿cómo puedo saber si está activado o no?
Gracias por tu respuesta.
Respuesta Responder a este mensaje
#4 German Saer
08/11/2005 - 03:33 | Informe spam
Humm!
Esto no luce correcto para mi. Por que no colocas un poco mas del codigo
que estas tratando de ejecutar?

La verdad no entiendo que estas tratando de grabar. El comando save del
recordset no deberia tener ningun parametro adicional.


___________
Thanks,

German Saer
Orlando, FL


"Matías Iacono" wrote in message
news:eSg9L$
Pues, si o si tienen que ponerlo ellos.

Ahora, por lo general, si es un servidor de terceros, te dan un directorio
fuera del sitio web donde, por un lado, se coloca la DB, si es access, y
como access necesita de estos permisos, entonces esta con ellos.

El problema de los servidores de terceros, es que, por politicas de
seguridad, no te dejan hacer nada de nada fuera de tu espacio, ya que, con
ASP, podrias eliminar partes vitales del servidor.

Prueba si lo que estas haciendo funciona en tu maquina de manera local. Si
lo hace, entonces esta mas que claro que no tienes permisos de escritura
sobre el directorio que quieres acceder en el servidor de terceros.

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"erb" escribió en el mensaje
news:
Hola Matías,
La verdad es que no lo se ya que la página está alojada en un
servidor compartido del proveedor (Arsys). Este permiso ¿lo tienen que
poner ellos o hay alguna forma de activarlo desde fuera del servidor? y
¿cómo puedo saber si está activado o no?
Gracias por tu respuesta.


Respuesta Responder a este mensaje
#5 erb
08/11/2005 - 09:47 | Informe spam
Hola amigos,
Gracias por vuestra ayuda. La respuesta de Matías me ha dado la
solución. El problema es de permisos y se soluciona modificando la
ruta para que el archivo se guarde en la misma carpeta que la base de
datos Access (que no se usa en este proyecto).
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida