sobre RS desconectados

24/10/2003 - 19:58 por Hernán Castelo | Informe spam
los RS desconectados...
entiendo que le alivia recursos al servidor
pero son seguros?
no son suceptibles de ser manipulados?
quién gestiona los Updates?
queda en el servidor
alguna especie de puntero al RS desconectado
(alojado en el cliente) ??


gracias de antemano
por los comentarios

atte,
Hernán Castelo
UTN - Buenos Aires
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .

Preguntas similare

Leer las respuestas

#16 danicastillo
27/10/2003 - 17:17 | Informe spam
creo que tienes un error de concepto basico


veamos, tu tienes una web asp , que muestra por ejemplo un formulario con un
registro de la base de datos, para que el cliente lo modifique ¿vale?

los pasos son estos:

en el servidor (ojo)
1 abro el recordset
2 leo los datos del registro
3 con asp compones una pagina web
4 cierras el recordset
5 esa pagina web es enviada al cliente, como un html estatico

(los pasos son un poco mas difusos q todo eso, la pagina la compones y
envias al mismo tiempo)

ten en cuenta que todo eso se ha hecho en el servidor, la lectura del
recordset incluida, al cliente aun no ha llegado nada en este punto


el cliente:
1 recibe una pagina web estatica (html puro y duro) con un formulario y unos
datos que son mostrados estaticos
2 cambia esos datos
3 aprieta a enviar el formulario

el cliente no recibe ningun recordset, nada que ver con conexiones a bases
de datos ni nada, para el cliente es una pagina web html con un formulario

el servidor de nuevo:
1 recibe los datos del formulario
2 abre un recordset insertando esos datos (insert into...) o lo que sea


en todo el proceso el recordset reside siempre en el servidor, nunca pasa al
cliente


-o|o|--
-o|o| dani castillo
-o|o| http://www15.brinkster.com/danic/
-o|o| tutorial y trucos asp, vb, diseño
-o|o|--
"Hernán Castelo" escribió en el mensaje
news:
gracias Jhonny,
trataré de cerrar también el RS
lo más pronto posible entonces!

mi mayor preocupación es saber
si esta es la manera habitual de tratar
la actualización de los datos:
1- cliente pide los datos
2- me traigo un recordSet
3- devuelvo el RS con Response.write
4- examino los Request.Form("campo")
para saber qué actualizar y qué no

hasta luego
atte,
Hernán Castelo
UTN - Buenos Aires
. . . . . . . . . . . . . . . . . . . . . . . . .


.
. . . .

"Jhonny Vargas P." escribió en el


mensaje
news:
> Hola Hernán,
>
> La idea es tener el menor tiempo posible una conección con la base de
datos,
> es más, los recordset también deberían durar el menor tiempo posible e
> utilizar matrices y luego desactivarlas.
>
> Los Recordset te sirven, exclusivamente para traer información de tu


base
de
> datos y luego mostrarla. Por lo tanto no sé para que necesitas un
Recordset
> desconectado (que nunca lo he visto en el web).
>
> Te doy un ejemplo de un recordset que dura muy poco abierto:
>
> Dim objRec, objCon, Datos
> Set objCon = Server.CreateObject("ADODB.Connection")
> objCon.Open "String de coneccion"
>
> Set objRec = objCon.Execute("Select * from tabla")
>
> Datos = objRec.GetRows() 'transformar los datos a una matriz
>
> Set objRec = Nothing
> objCon.Close
> Set objCon = Nothing
>
>
> Luego te dedicas a pasar estos valores al web.
>
> 'Estas funciones te entregan el maximo y minimo de una matriz con dos
> dimensiones.
> For Fila = LBound(Datos) To UBound(Datos)
> Response.Write Datos(0, Fila) & ", " & Datos(1, Fila) & "<br>"
> Next
>
> Todo lo que te he dicho son recomendaciones para que tengas un buen
proceso
> con el servidor y no lo colapses fácilmente
>
> Espero que te sirva.
>
>
> Saludos,
> Jhonny Vargas P. [MS MVP-ASP]
> Santiago de Chile
>
>
> "Hernán Castelo" wrote in message
> news:
> > Shaska,
> > a ver si entiendo:
> >
> > - Usar una sola página ASP
> > - Sumbitir a la misma página preguntando por los Requests vacíos
> > - De ningún modo puedo volver a "reabrir" el recordset para leerlo,
> > pero puedo utilizar los Request.campo( x )
> >
> > los RS desconectados solo se distinguen por:
> > RS.recordSetLocation= adUseClient ??
> >
> > ...no comprendo aún
> > la utilidad del RS desconectado
> >
> > debo entender que se utilizan
> > para no recargar al servidor de datos entonces??
> >
> >
> > gracias nuevamente
> >
> > atte,
> > Hernán Castelo
> > UTN - Buenos Aires
> > . . . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > . . . .
> >
> > "Sashka" escribió en el mensaje
> > news:
> > > Efectivamente... eso es lo que te vengo diciendo.. ya no puedes
> consultar
> > > ese cursor con respecto a usar rs enlazados... yo nunca lo he
> > visto
> > > a no ser que exista algún ocx pero como te digo cuando la


pagina
> está
> > > cargada. está del lado del cliente y al submitirla es como si se
> > cargara
> > > por primera vez... eso lo manejas preguntando por los request que
serán
> > > cadena vacía la primera vez... y tendrán valor las siguientes
> > >
> > > Sashka
> > >
> > > "Hernán Castelo" escribió en el mensaje
> > > news:e$
> > > > gracias Sashka
> > > > ah, muy bien
> > > > yo pensaba que el RS quedaba de alguna forma
> > > > escrito en el disco del cliente... qué suerte que no
> > > >
> > > > pero estoy algo confundido
> > > >
> > > > yo hasta ahora lo único sé hacer es
> > > > crear el RS y mandarlo al cliente con Response.Write
> > > > luego, cuando el usuario submita el form
> > > > ya no puedo consultar ese cursor
> > > > porque yo escribí Html
> > > >
> > > > veo que se utilizan RS enlazados a datos
> > > > o bien RS de "ADOR" o "ADOC"...
> > > > vos hablás de alguno de esos casos (enlazados)?
> > > >
> > > > me pasarías algún ejemplo o link
> > > >
> > > > atte,
> > > > Hernán Castelo
> > > > UTN - Buenos Aires
> > > > . . . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > . . . .
> > > >
> > > > atte,
> > > > Hernán Castelo
> > > > UTN - Buenos Aires
> > > > . . . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > . . . .
> > > >
> > > > "Sashka" escribió en el mensaje
> > > > news:
> > > > > El recordset no llega nunca al cliente al cliente llega el
html
> > con
> > > > los
> > > > > datos que tu hayas escrito en él leyendo el recordset. es


como
> > > cuando
> > > > > ves el código fuente de una página asp sólo verás el html
> > > generado...
> > > > no
> > > > > hay forma de "reconectarse"... si tu presentas los datos de un
> > registro
> > > en
> > > > > un formulario y luego miras en el código fuente, verás que no


hay
> > > ninguna
> > > > > referencia al recordset... y su el usuario cambia algun dato,


por
> > > ejemplo,
> > > > > al submitir el formulario recibes el dato con un
> request.form("campo")
> > ,
> > > > > deberás crear tu sentencia sql, abrir una conexión y
ejecutarla
> la
> > > > > conexión con la que hayas abierto el recordset original ya no
estará
> > > > > disponible... aun cuando no la hayas cerrado antes Con
respecto
> a
> > > como
> > > > > se manejan las actualizaciones... no importa como hayas filtrado
el
> > > > > recordset original. tu sentencia sql de actualización deberá
> > incluir
> > > > la
> > > > > clave para que ADO erncuentre el registro que quieres
> actualizar.
> > > > >
> > > > > Si tenemos un recordset así: "Select campo1,campo2, campo3 from
> > ejemplo"
> > > > >
> > > > > Y después quieres actualizar determinado registro tu sql


será
> algo
> > > > asi:
> > > > > "update ejemplo set campo2 = 'aaaaa' where campo1='algo'"
> > > > >
> > > > > Sashka
> > > > >
> > > > > "Hernán Castelo" escribió en el
> > mensaje
> > > > > news:
> > > > > > gracias por responder :
> > > > > >
> > > > > > Si el recordSet está en la PC del cliente
> > > > > > no puede una persona
> > > > > > abrir ese recordSet de ninguna manera???
> > > > > > a eso me refiero cuando pregunto si es seguro
> > > > > >
> > > > > > Por eso mismo pregunto
> > > > > > el servidor mantiene de alguna manera
> > > > > > una lista de dónde están sus recordSets desconectados
> > > > > > es decir cómo valida que al reconectar
> > > > > > el recordSet sea el mismo enviado la primera vez
> > > > > > (no me refiere a los cambios o inserciones
> > > > > > sino al recordSet mismo)
> > > > > >
> > > > > > Luego
> > > > > > quién gestiona las actualizaciones ?
> > > > > > o sea quién gestiona la autenticidad de la
> > > > > > conexión/ re-conexión
> > > > > > el IIS?
> > > > > >
> > > > > > Y cómo se manejan las actualizaciones
> > > > > > por clave (primary key)?
> > > > > > y si el recordSet estaba filtrado
> > > > > > por una condición especial?
> > > > > > por ej, eran todos los datos
> > > > > > de una sola persona,
> > > > > > por lo tanto no figura el ID de la persona??
> > > > > > cómo se actualizan esos datos ??
> > > > > >
> > > > > > gracias nuevamente
> > > > > > espero que ahora se comprenda
> > > > > >
> > > > > >
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > "Sashka" escribió en el mensaje
> > > > > > news:
> > > > > > > En asp no tienes otra opción que trabajar con recordset
> > > > desconectados...
> > > > > > no
> > > > > > > entiendo tu duda tu abres una conexión, creas un


recordset
y
> > > haces
> > > > > > algo
> > > > > > > con él, normalmente lo "pasas" a una tabla html y cierras el
> > > recordset
> > > > y
> > > > > > la
> > > > > > > conexión todo antes de que se ejecute nada en el
cliente
> > si
> > > > > dejas
> > > > > > la
> > > > > > > conexión y el recordset abiertos, lo único que logras es
> > sobrecargar
> > > > el
> > > > > > > servidor pues desde el cliente son inacesibles.
> > > > > > >
> > > > > > > Sashka
> > > > > > >
> > > > > > > "Hernán Castelo" escribió en
el
> > > > mensaje
> > > > > > > news:#
> > > > > > > > los RS desconectados...
> > > > > > > > entiendo que le alivia recursos al servidor
> > > > > > > > pero son seguros?
> > > > > > > > no son suceptibles de ser manipulados?
> > > > > > > > quién gestiona los Updates?
> > > > > > > > queda en el servidor
> > > > > > > > alguna especie de puntero al RS desconectado
> > > > > > > > (alojado en el cliente) ??
> > > > > > > >
> > > > > > > >
> > > > > > > > gracias de antemano
> > > > > > > > por los comentarios
> > > > > > > >
> > > > > > > > atte,
> > > > > > > > Hernán Castelo
> > > > > > > > UTN - Buenos Aires
> > > > > > > > . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > > .
> > > > > > > .
> > > > > > > > . . . .
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Respuesta Responder a este mensaje
#17 Sashka
27/10/2003 - 17:30 | Informe spam
Hernan espero que esté todo más claro... los maestros lo explican mejor que
yo :))

Sashka

"danicastillo" escribió en el
mensaje news:ed1$
creo que tienes un error de concepto basico


veamos, tu tienes una web asp , que muestra por ejemplo un formulario con


un
registro de la base de datos, para que el cliente lo modifique ¿vale?

los pasos son estos:

en el servidor (ojo)
1 abro el recordset
2 leo los datos del registro
3 con asp compones una pagina web
4 cierras el recordset
5 esa pagina web es enviada al cliente, como un html estatico

(los pasos son un poco mas difusos q todo eso, la pagina la compones y
envias al mismo tiempo)

ten en cuenta que todo eso se ha hecho en el servidor, la lectura del
recordset incluida, al cliente aun no ha llegado nada en este punto


el cliente:
1 recibe una pagina web estatica (html puro y duro) con un formulario y


unos
datos que son mostrados estaticos
2 cambia esos datos
3 aprieta a enviar el formulario

el cliente no recibe ningun recordset, nada que ver con conexiones a bases
de datos ni nada, para el cliente es una pagina web html con un formulario

el servidor de nuevo:
1 recibe los datos del formulario
2 abre un recordset insertando esos datos (insert into...) o lo que sea


en todo el proceso el recordset reside siempre en el servidor, nunca pasa


al
cliente


-o|o|--
-o|o| dani castillo
-o|o| http://www15.brinkster.com/danic/
-o|o| tutorial y trucos asp, vb, diseño
-o|o|--
"Hernán Castelo" escribió en el mensaje
news:
> gracias Jhonny,
> trataré de cerrar también el RS
> lo más pronto posible entonces!
>
> mi mayor preocupación es saber
> si esta es la manera habitual de tratar
> la actualización de los datos:
> 1- cliente pide los datos
> 2- me traigo un recordSet
> 3- devuelvo el RS con Response.write
> 4- examino los Request.Form("campo")
> para saber qué actualizar y qué no
>
> hasta luego
> atte,
> Hernán Castelo
> UTN - Buenos Aires
> . . . . . . . . . . . . . . . . . . . . . . . .


.
.
> . . . .
>
> "Jhonny Vargas P." escribió en el
mensaje
> news:
> > Hola Hernán,
> >
> > La idea es tener el menor tiempo posible una conección con la base de
> datos,
> > es más, los recordset también deberían durar el menor tiempo posible e
> > utilizar matrices y luego desactivarlas.
> >
> > Los Recordset te sirven, exclusivamente para traer información de tu
base
> de
> > datos y luego mostrarla. Por lo tanto no sé para que necesitas un
> Recordset
> > desconectado (que nunca lo he visto en el web).
> >
> > Te doy un ejemplo de un recordset que dura muy poco abierto:
> >
> > Dim objRec, objCon, Datos
> > Set objCon = Server.CreateObject("ADODB.Connection")
> > objCon.Open "String de coneccion"
> >
> > Set objRec = objCon.Execute("Select * from tabla")
> >
> > Datos = objRec.GetRows() 'transformar los datos a una matriz
> >
> > Set objRec = Nothing
> > objCon.Close
> > Set objCon = Nothing
> >
> >
> > Luego te dedicas a pasar estos valores al web.
> >
> > 'Estas funciones te entregan el maximo y minimo de una matriz con dos
> > dimensiones.
> > For Fila = LBound(Datos) To UBound(Datos)
> > Response.Write Datos(0, Fila) & ", " & Datos(1, Fila) & "<br>"
> > Next
> >
> > Todo lo que te he dicho son recomendaciones para que tengas un buen
> proceso
> > con el servidor y no lo colapses fácilmente
> >
> > Espero que te sirva.
> >
> >
> > Saludos,
> > Jhonny Vargas P. [MS MVP-ASP]
> > Santiago de Chile
> >
> >
> > "Hernán Castelo" wrote in message
> > news:
> > > Shaska,
> > > a ver si entiendo:
> > >
> > > - Usar una sola página ASP
> > > - Sumbitir a la misma página preguntando por los Requests vacíos
> > > - De ningún modo puedo volver a "reabrir" el recordset para leerlo,
> > > pero puedo utilizar los Request.campo( x )
> > >
> > > los RS desconectados solo se distinguen por:
> > > RS.recordSetLocation= adUseClient ??
> > >
> > > ...no comprendo aún
> > > la utilidad del RS desconectado
> > >
> > > debo entender que se utilizan
> > > para no recargar al servidor de datos entonces??
> > >
> > >
> > > gracias nuevamente
> > >
> > > atte,
> > > Hernán Castelo
> > > UTN - Buenos Aires
> > > . . . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > . . . .
> > >
> > > "Sashka" escribió en el mensaje
> > > news:
> > > > Efectivamente... eso es lo que te vengo diciendo.. ya no puedes
> > consultar
> > > > ese cursor con respecto a usar rs enlazados... yo nunca lo he
> > > visto
> > > > a no ser que exista algún ocx pero como te digo cuando la
pagina
> > está
> > > > cargada. está del lado del cliente y al submitirla es como si


se
> > > cargara
> > > > por primera vez... eso lo manejas preguntando por los request que
> serán
> > > > cadena vacía la primera vez... y tendrán valor las siguientes
> > > >
> > > > Sashka
> > > >
> > > > "Hernán Castelo" escribió en el


mensaje
> > > > news:e$
> > > > > gracias Sashka
> > > > > ah, muy bien
> > > > > yo pensaba que el RS quedaba de alguna forma
> > > > > escrito en el disco del cliente... qué suerte que no
> > > > >
> > > > > pero estoy algo confundido
> > > > >
> > > > > yo hasta ahora lo único sé hacer es
> > > > > crear el RS y mandarlo al cliente con Response.Write
> > > > > luego, cuando el usuario submita el form
> > > > > ya no puedo consultar ese cursor
> > > > > porque yo escribí Html
> > > > >
> > > > > veo que se utilizan RS enlazados a datos
> > > > > o bien RS de "ADOR" o "ADOC"...
> > > > > vos hablás de alguno de esos casos (enlazados)?
> > > > >
> > > > > me pasarías algún ejemplo o link
> > > > >
> > > > > atte,
> > > > > Hernán Castelo
> > > > > UTN - Buenos Aires
> > > > > . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > . . . .
> > > > >
> > > > > atte,
> > > > > Hernán Castelo
> > > > > UTN - Buenos Aires
> > > > > . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > . . . .
> > > > >
> > > > > "Sashka" escribió en el mensaje
> > > > > news:
> > > > > > El recordset no llega nunca al cliente al cliente llega el
> html
> > > con
> > > > > los
> > > > > > datos que tu hayas escrito en él leyendo el recordset. es
como
> > > > cuando
> > > > > > ves el código fuente de una página asp sólo verás el html
> > > > generado...
> > > > > no
> > > > > > hay forma de "reconectarse"... si tu presentas los datos de un
> > > registro
> > > > en
> > > > > > un formulario y luego miras en el código fuente, verás que no
hay
> > > > ninguna
> > > > > > referencia al recordset... y su el usuario cambia algun dato,
por
> > > > ejemplo,
> > > > > > al submitir el formulario recibes el dato con un
> > request.form("campo")
> > > ,
> > > > > > deberás crear tu sentencia sql, abrir una conexión y
> ejecutarla
> > la
> > > > > > conexión con la que hayas abierto el recordset original ya no
> estará
> > > > > > disponible... aun cuando no la hayas cerrado antes Con
> respecto
> > a
> > > > como
> > > > > > se manejan las actualizaciones... no importa como hayas


filtrado
> el
> > > > > > recordset original. tu sentencia sql de actualización


deberá
> > > incluir
> > > > > la
> > > > > > clave para que ADO erncuentre el registro que quieres
> > actualizar.
> > > > > >
> > > > > > Si tenemos un recordset así: "Select campo1,campo2, campo3


from
> > > ejemplo"
> > > > > >
> > > > > > Y después quieres actualizar determinado registro tu sql
será
> > algo
> > > > > asi:
> > > > > > "update ejemplo set campo2 = 'aaaaa' where campo1='algo'"
> > > > > >
> > > > > > Sashka
> > > > > >
> > > > > > "Hernán Castelo" escribió en


el
> > > mensaje
> > > > > > news:
> > > > > > > gracias por responder :
> > > > > > >
> > > > > > > Si el recordSet está en la PC del cliente
> > > > > > > no puede una persona
> > > > > > > abrir ese recordSet de ninguna manera???
> > > > > > > a eso me refiero cuando pregunto si es seguro
> > > > > > >
> > > > > > > Por eso mismo pregunto
> > > > > > > el servidor mantiene de alguna manera
> > > > > > > una lista de dónde están sus recordSets desconectados
> > > > > > > es decir cómo valida que al reconectar
> > > > > > > el recordSet sea el mismo enviado la primera vez
> > > > > > > (no me refiere a los cambios o inserciones
> > > > > > > sino al recordSet mismo)
> > > > > > >
> > > > > > > Luego
> > > > > > > quién gestiona las actualizaciones ?
> > > > > > > o sea quién gestiona la autenticidad de la
> > > > > > > conexión/ re-conexión
> > > > > > > el IIS?
> > > > > > >
> > > > > > > Y cómo se manejan las actualizaciones
> > > > > > > por clave (primary key)?
> > > > > > > y si el recordSet estaba filtrado
> > > > > > > por una condición especial?
> > > > > > > por ej, eran todos los datos
> > > > > > > de una sola persona,
> > > > > > > por lo tanto no figura el ID de la persona??
> > > > > > > cómo se actualizan esos datos ??
> > > > > > >
> > > > > > > gracias nuevamente
> > > > > > > espero que ahora se comprenda
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > atte,
> > > > > > > Hernán Castelo
> > > > > > > UTN - Buenos Aires
> > > > > > > . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > > .
> > > > > > .
> > > > > > > . . . .
> > > > > > >
> > > > > > > "Sashka" escribió en el mensaje
> > > > > > > news:
> > > > > > > > En asp no tienes otra opción que trabajar con recordset
> > > > > desconectados...
> > > > > > > no
> > > > > > > > entiendo tu duda tu abres una conexión, creas un
recordset
> y
> > > > haces
> > > > > > > algo
> > > > > > > > con él, normalmente lo "pasas" a una tabla html y cierras


el
> > > > recordset
> > > > > y
> > > > > > > la
> > > > > > > > conexión todo antes de que se ejecute nada en el
> cliente
> > > si
> > > > > > dejas
> > > > > > > la
> > > > > > > > conexión y el recordset abiertos, lo único que logras es
> > > sobrecargar
> > > > > el
> > > > > > > > servidor pues desde el cliente son inacesibles.
> > > > > > > >
> > > > > > > > Sashka
> > > > > > > >
> > > > > > > > "Hernán Castelo" escribió


en
> el
> > > > > mensaje
> > > > > > > > news:#
> > > > > > > > > los RS desconectados...
> > > > > > > > > entiendo que le alivia recursos al servidor
> > > > > > > > > pero son seguros?
> > > > > > > > > no son suceptibles de ser manipulados?
> > > > > > > > > quién gestiona los Updates?
> > > > > > > > > queda en el servidor
> > > > > > > > > alguna especie de puntero al RS desconectado
> > > > > > > > > (alojado en el cliente) ??
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > gracias de antemano
> > > > > > > > > por los comentarios
> > > > > > > > >
> > > > > > > > > atte,
> > > > > > > > > Hernán Castelo
> > > > > > > > > UTN - Buenos Aires
> > > > > > > > > . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > > .
> > > > > > > > .
> > > > > > > > > . . . .
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
>


Respuesta Responder a este mensaje
#18 Jhonny Vargas P.
27/10/2003 - 17:34 | Informe spam
Pero es más preferible que tenerlo en un recordset.

tienes varias alternativas a parte de la matriz para utilizar datos:
- Vía XML, si tienes SQL Server 2000, en forma nativa te trae los datos...
por intermedio de XSL puedes mostrar los datos y no te consume muy poco de
memoria.

- Objetos, Colecciones, etc

- Matriz

- Recordset


Obviamente deberías elegir la mas conveniente... te recomiendo la de matriz,
que es mucho más simple de trabajar y no dejas tantos recordset... Aunque el
utilizar Recordset no es prohibido, pero puede ser que con un buen numero de
usuarios colapse tu servidor.


Saludos,
Jhonny Vargas P. [MS MVP-ASP]
Santiago de Chile


"Hernán Castelo" wrote in message
news:ugUr$
y el array "solo" consume memoria
por eso es preferible el array?

atte,
Hernán Castelo
UTN - Buenos Aires
. . . . . . . . . . . . . . . . . . . . . . . . .


.
. . . .

"Jhonny Vargas P." escribió en el


mensaje
news:
> Ambas
>
>
>
> "Hernán Castelo" wrote in message
> news:
> > por cierto
> > la necesidad de cerrar pronto el RecordSet,
> > a qué se debe ???
> > 1- consume recursos de la DB
> > 2- consume memoria
> >
> >
> >
> > atte,
> > Hernán Castelo
> > UTN - Buenos Aires
> > . . . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > . . . .
> >
> > "Jhonny Vargas P." escribió en el
> mensaje
> > news:
> > > Hola Hernán,
> > >
> > > La idea es tener el menor tiempo posible una conección con la base


de
> > datos,
> > > es más, los recordset también deberían durar el menor tiempo posible


e
> > > utilizar matrices y luego desactivarlas.
> > >
> > > Los Recordset te sirven, exclusivamente para traer información de tu
> base
> > de
> > > datos y luego mostrarla. Por lo tanto no sé para que necesitas un
> > Recordset
> > > desconectado (que nunca lo he visto en el web).
> > >
> > > Te doy un ejemplo de un recordset que dura muy poco abierto:
> > >
> > > Dim objRec, objCon, Datos
> > > Set objCon = Server.CreateObject("ADODB.Connection")
> > > objCon.Open "String de coneccion"
> > >
> > > Set objRec = objCon.Execute("Select * from tabla")
> > >
> > > Datos = objRec.GetRows() 'transformar los datos a una matriz
> > >
> > > Set objRec = Nothing
> > > objCon.Close
> > > Set objCon = Nothing
> > >
> > >
> > > Luego te dedicas a pasar estos valores al web.
> > >
> > > 'Estas funciones te entregan el maximo y minimo de una matriz con


dos
> > > dimensiones.
> > > For Fila = LBound(Datos) To UBound(Datos)
> > > Response.Write Datos(0, Fila) & ", " & Datos(1, Fila) & "<br>"
> > > Next
> > >
> > > Todo lo que te he dicho son recomendaciones para que tengas un buen
> > proceso
> > > con el servidor y no lo colapses fácilmente
> > >
> > > Espero que te sirva.
> > >
> > >
> > > Saludos,
> > > Jhonny Vargas P. [MS MVP-ASP]
> > > Santiago de Chile
> > >
> > >
> > > "Hernán Castelo" wrote in message
> > > news:
> > > > Shaska,
> > > > a ver si entiendo:
> > > >
> > > > - Usar una sola página ASP
> > > > - Sumbitir a la misma página preguntando por los Requests vacíos
> > > > - De ningún modo puedo volver a "reabrir" el recordset para


leerlo,
> > > > pero puedo utilizar los Request.campo( x )
> > > >
> > > > los RS desconectados solo se distinguen por:
> > > > RS.recordSetLocation= adUseClient ??
> > > >
> > > > ...no comprendo aún
> > > > la utilidad del RS desconectado
> > > >
> > > > debo entender que se utilizan
> > > > para no recargar al servidor de datos entonces??
> > > >
> > > >
> > > > gracias nuevamente
> > > >
> > > > atte,
> > > > Hernán Castelo
> > > > UTN - Buenos Aires
> > > > . . . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > . . . .
> > > >
> > > > "Sashka" escribió en el mensaje
> > > > news:
> > > > > Efectivamente... eso es lo que te vengo diciendo.. ya no puedes
> > > consultar
> > > > > ese cursor con respecto a usar rs enlazados... yo nunca lo


he
> > > > visto
> > > > > a no ser que exista algún ocx pero como te digo cuando la
> pagina
> > > está
> > > > > cargada. está del lado del cliente y al submitirla es como


si
se
> > > > cargara
> > > > > por primera vez... eso lo manejas preguntando por los request


que
> > serán
> > > > > cadena vacía la primera vez... y tendrán valor las


siguientes
> > > > >
> > > > > Sashka
> > > > >
> > > > > "Hernán Castelo" escribió en el
mensaje
> > > > > news:e$
> > > > > > gracias Sashka
> > > > > > ah, muy bien
> > > > > > yo pensaba que el RS quedaba de alguna forma
> > > > > > escrito en el disco del cliente... qué suerte que no
> > > > > >
> > > > > > pero estoy algo confundido
> > > > > >
> > > > > > yo hasta ahora lo único sé hacer es
> > > > > > crear el RS y mandarlo al cliente con Response.Write
> > > > > > luego, cuando el usuario submita el form
> > > > > > ya no puedo consultar ese cursor
> > > > > > porque yo escribí Html
> > > > > >
> > > > > > veo que se utilizan RS enlazados a datos
> > > > > > o bien RS de "ADOR" o "ADOC"...
> > > > > > vos hablás de alguno de esos casos (enlazados)?
> > > > > >
> > > > > > me pasarías algún ejemplo o link
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > "Sashka" escribió en el mensaje
> > > > > > news:
> > > > > > > El recordset no llega nunca al cliente al cliente llega


el
> > html
> > > > con
> > > > > > los
> > > > > > > datos que tu hayas escrito en él leyendo el recordset.


es
> como
> > > > > cuando
> > > > > > > ves el código fuente de una página asp sólo verás el


html
> > > > > generado...
> > > > > > no
> > > > > > > hay forma de "reconectarse"... si tu presentas los datos de


un
> > > > registro
> > > > > en
> > > > > > > un formulario y luego miras en el código fuente, verás que


no
> hay
> > > > > ninguna
> > > > > > > referencia al recordset... y su el usuario cambia algun


dato,
> por
> > > > > ejemplo,
> > > > > > > al submitir el formulario recibes el dato con un
> > > request.form("campo")
> > > > ,
> > > > > > > deberás crear tu sentencia sql, abrir una conexión y
> > ejecutarla
> > > la
> > > > > > > conexión con la que hayas abierto el recordset original ya


no
> > estará
> > > > > > > disponible... aun cuando no la hayas cerrado antes Con
> > respecto
> > > a
> > > > > como
> > > > > > > se manejan las actualizaciones... no importa como hayas
filtrado
> > el
> > > > > > > recordset original. tu sentencia sql de actualización
deberá
> > > > incluir
> > > > > > la
> > > > > > > clave para que ADO erncuentre el registro que quieres
> > > actualizar.
> > > > > > >
> > > > > > > Si tenemos un recordset así: "Select campo1,campo2, campo3
from
> > > > ejemplo"
> > > > > > >
> > > > > > > Y después quieres actualizar determinado registro tu sql
> será
> > > algo
> > > > > > asi:
> > > > > > > "update ejemplo set campo2 = 'aaaaa' where campo1='algo'"
> > > > > > >
> > > > > > > Sashka
> > > > > > >
> > > > > > > "Hernán Castelo" escribió en
el
> > > > mensaje
> > > > > > > news:
> > > > > > > > gracias por responder :
> > > > > > > >
> > > > > > > > Si el recordSet está en la PC del cliente
> > > > > > > > no puede una persona
> > > > > > > > abrir ese recordSet de ninguna manera???
> > > > > > > > a eso me refiero cuando pregunto si es seguro
> > > > > > > >
> > > > > > > > Por eso mismo pregunto
> > > > > > > > el servidor mantiene de alguna manera
> > > > > > > > una lista de dónde están sus recordSets desconectados
> > > > > > > > es decir cómo valida que al reconectar
> > > > > > > > el recordSet sea el mismo enviado la primera vez
> > > > > > > > (no me refiere a los cambios o inserciones
> > > > > > > > sino al recordSet mismo)
> > > > > > > >
> > > > > > > > Luego
> > > > > > > > quién gestiona las actualizaciones ?
> > > > > > > > o sea quién gestiona la autenticidad de la
> > > > > > > > conexión/ re-conexión
> > > > > > > > el IIS?
> > > > > > > >
> > > > > > > > Y cómo se manejan las actualizaciones
> > > > > > > > por clave (primary key)?
> > > > > > > > y si el recordSet estaba filtrado
> > > > > > > > por una condición especial?
> > > > > > > > por ej, eran todos los datos
> > > > > > > > de una sola persona,
> > > > > > > > por lo tanto no figura el ID de la persona??
> > > > > > > > cómo se actualizan esos datos ??
> > > > > > > >
> > > > > > > > gracias nuevamente
> > > > > > > > espero que ahora se comprenda
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > atte,
> > > > > > > > Hernán Castelo
> > > > > > > > UTN - Buenos Aires
> > > > > > > > . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > > .
> > > > > > > .
> > > > > > > > . . . .
> > > > > > > >
> > > > > > > > "Sashka" escribió en el


mensaje
> > > > > > > > news:
> > > > > > > > > En asp no tienes otra opción que trabajar con recordset
> > > > > > desconectados...
> > > > > > > > no
> > > > > > > > > entiendo tu duda tu abres una conexión, creas un
> recordset
> > y
> > > > > haces
> > > > > > > > algo
> > > > > > > > > con él, normalmente lo "pasas" a una tabla html y


cierras
el
> > > > > recordset
> > > > > > y
> > > > > > > > la
> > > > > > > > > conexión todo antes de que se ejecute nada en el
> > cliente
> > > > si
> > > > > > > dejas
> > > > > > > > la
> > > > > > > > > conexión y el recordset abiertos, lo único que logras es
> > > > sobrecargar
> > > > > > el
> > > > > > > > > servidor pues desde el cliente son inacesibles.
> > > > > > > > >
> > > > > > > > > Sashka
> > > > > > > > >
> > > > > > > > > "Hernán Castelo"


escribió
en
> > el
> > > > > > mensaje
> > > > > > > > > news:#
> > > > > > > > > > los RS desconectados...
> > > > > > > > > > entiendo que le alivia recursos al servidor
> > > > > > > > > > pero son seguros?
> > > > > > > > > > no son suceptibles de ser manipulados?
> > > > > > > > > > quién gestiona los Updates?
> > > > > > > > > > queda en el servidor
> > > > > > > > > > alguna especie de puntero al RS desconectado
> > > > > > > > > > (alojado en el cliente) ??
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > gracias de antemano
> > > > > > > > > > por los comentarios
> > > > > > > > > >
> > > > > > > > > > atte,
> > > > > > > > > > Hernán Castelo
> > > > > > > > > > UTN - Buenos Aires
> > > > > > > > > > . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > > .
> > > > > > .
> > > > > > > > .
> > > > > > > > > .
> > > > > > > > > > . . . .
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#19 danicastillo
27/10/2003 - 17:58 | Informe spam
na Shaska explicas muy bien =) (por eso te leo jeje) lo que pasa esq igual
entre todos estamos liandolo mas q si hubieras seguido tu jajaja pero bueno
al final almenos xarramos ;-)

ademas asi liamos tambien a Jhonny que estaba demasiado tranquilo, apenas
cambia ya su nombre en el mesenger... mala señal jajaja

abrazos para todos (a repartir!)
dani.


-o|o|--
-o|o| dani castillo
-o|o| http://www15.brinkster.com/danic/
-o|o| tutorial y trucos asp, vb, diseño
-o|o|--
"Sashka" escribió en el mensaje
news:
Hernan espero que esté todo más claro... los maestros lo explican mejor


que
yo :))

Sashka

"danicastillo" escribió en el
mensaje news:ed1$
> creo que tienes un error de concepto basico
>
>
> veamos, tu tienes una web asp , que muestra por ejemplo un formulario


con
un
> registro de la base de datos, para que el cliente lo modifique ¿vale?
>
> los pasos son estos:
>
> en el servidor (ojo)
> 1 abro el recordset
> 2 leo los datos del registro
> 3 con asp compones una pagina web
> 4 cierras el recordset
> 5 esa pagina web es enviada al cliente, como un html estatico
>
> (los pasos son un poco mas difusos q todo eso, la pagina la compones y
> envias al mismo tiempo)
>
> ten en cuenta que todo eso se ha hecho en el servidor, la lectura del
> recordset incluida, al cliente aun no ha llegado nada en este punto
>
>
> el cliente:
> 1 recibe una pagina web estatica (html puro y duro) con un formulario y
unos
> datos que son mostrados estaticos
> 2 cambia esos datos
> 3 aprieta a enviar el formulario
>
> el cliente no recibe ningun recordset, nada que ver con conexiones a


bases
> de datos ni nada, para el cliente es una pagina web html con un


formulario
>
> el servidor de nuevo:
> 1 recibe los datos del formulario
> 2 abre un recordset insertando esos datos (insert into...) o lo que sea
>
>
> en todo el proceso el recordset reside siempre en el servidor, nunca


pasa
al
> cliente
>
>
> -o|o|--
> -o|o| dani castillo
> -o|o| http://www15.brinkster.com/danic/
> -o|o| tutorial y trucos asp, vb, diseño
> -o|o|--
> "Hernán Castelo" escribió en el mensaje
> news:
> > gracias Jhonny,
> > trataré de cerrar también el RS
> > lo más pronto posible entonces!
> >
> > mi mayor preocupación es saber
> > si esta es la manera habitual de tratar
> > la actualización de los datos:
> > 1- cliente pide los datos
> > 2- me traigo un recordSet
> > 3- devuelvo el RS con Response.write
> > 4- examino los Request.Form("campo")
> > para saber qué actualizar y qué no
> >
> > hasta luego
> > atte,
> > Hernán Castelo
> > UTN - Buenos Aires
> > . . . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > . . . .
> >
> > "Jhonny Vargas P." escribió en el
> mensaje
> > news:
> > > Hola Hernán,
> > >
> > > La idea es tener el menor tiempo posible una conección con la base


de
> > datos,
> > > es más, los recordset también deberían durar el menor tiempo posible


e
> > > utilizar matrices y luego desactivarlas.
> > >
> > > Los Recordset te sirven, exclusivamente para traer información de tu
> base
> > de
> > > datos y luego mostrarla. Por lo tanto no sé para que necesitas un
> > Recordset
> > > desconectado (que nunca lo he visto en el web).
> > >
> > > Te doy un ejemplo de un recordset que dura muy poco abierto:
> > >
> > > Dim objRec, objCon, Datos
> > > Set objCon = Server.CreateObject("ADODB.Connection")
> > > objCon.Open "String de coneccion"
> > >
> > > Set objRec = objCon.Execute("Select * from tabla")
> > >
> > > Datos = objRec.GetRows() 'transformar los datos a una matriz
> > >
> > > Set objRec = Nothing
> > > objCon.Close
> > > Set objCon = Nothing
> > >
> > >
> > > Luego te dedicas a pasar estos valores al web.
> > >
> > > 'Estas funciones te entregan el maximo y minimo de una matriz con


dos
> > > dimensiones.
> > > For Fila = LBound(Datos) To UBound(Datos)
> > > Response.Write Datos(0, Fila) & ", " & Datos(1, Fila) & "<br>"
> > > Next
> > >
> > > Todo lo que te he dicho son recomendaciones para que tengas un buen
> > proceso
> > > con el servidor y no lo colapses fácilmente
> > >
> > > Espero que te sirva.
> > >
> > >
> > > Saludos,
> > > Jhonny Vargas P. [MS MVP-ASP]
> > > Santiago de Chile
> > >
> > >
> > > "Hernán Castelo" wrote in message
> > > news:
> > > > Shaska,
> > > > a ver si entiendo:
> > > >
> > > > - Usar una sola página ASP
> > > > - Sumbitir a la misma página preguntando por los Requests vacíos
> > > > - De ningún modo puedo volver a "reabrir" el recordset para


leerlo,
> > > > pero puedo utilizar los Request.campo( x )
> > > >
> > > > los RS desconectados solo se distinguen por:
> > > > RS.recordSetLocation= adUseClient ??
> > > >
> > > > ...no comprendo aún
> > > > la utilidad del RS desconectado
> > > >
> > > > debo entender que se utilizan
> > > > para no recargar al servidor de datos entonces??
> > > >
> > > >
> > > > gracias nuevamente
> > > >
> > > > atte,
> > > > Hernán Castelo
> > > > UTN - Buenos Aires
> > > > . . . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > . . . .
> > > >
> > > > "Sashka" escribió en el mensaje
> > > > news:
> > > > > Efectivamente... eso es lo que te vengo diciendo.. ya no puedes
> > > consultar
> > > > > ese cursor con respecto a usar rs enlazados... yo nunca lo


he
> > > > visto
> > > > > a no ser que exista algún ocx pero como te digo cuando la
> pagina
> > > está
> > > > > cargada. está del lado del cliente y al submitirla es como


si
se
> > > > cargara
> > > > > por primera vez... eso lo manejas preguntando por los request


que
> > serán
> > > > > cadena vacía la primera vez... y tendrán valor las


siguientes
> > > > >
> > > > > Sashka
> > > > >
> > > > > "Hernán Castelo" escribió en el
mensaje
> > > > > news:e$
> > > > > > gracias Sashka
> > > > > > ah, muy bien
> > > > > > yo pensaba que el RS quedaba de alguna forma
> > > > > > escrito en el disco del cliente... qué suerte que no
> > > > > >
> > > > > > pero estoy algo confundido
> > > > > >
> > > > > > yo hasta ahora lo único sé hacer es
> > > > > > crear el RS y mandarlo al cliente con Response.Write
> > > > > > luego, cuando el usuario submita el form
> > > > > > ya no puedo consultar ese cursor
> > > > > > porque yo escribí Html
> > > > > >
> > > > > > veo que se utilizan RS enlazados a datos
> > > > > > o bien RS de "ADOR" o "ADOC"...
> > > > > > vos hablás de alguno de esos casos (enlazados)?
> > > > > >
> > > > > > me pasarías algún ejemplo o link
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > "Sashka" escribió en el mensaje
> > > > > > news:
> > > > > > > El recordset no llega nunca al cliente al cliente llega


el
> > html
> > > > con
> > > > > > los
> > > > > > > datos que tu hayas escrito en él leyendo el recordset.


es
> como
> > > > > cuando
> > > > > > > ves el código fuente de una página asp sólo verás el


html
> > > > > generado...
> > > > > > no
> > > > > > > hay forma de "reconectarse"... si tu presentas los datos de


un
> > > > registro
> > > > > en
> > > > > > > un formulario y luego miras en el código fuente, verás que


no
> hay
> > > > > ninguna
> > > > > > > referencia al recordset... y su el usuario cambia algun


dato,
> por
> > > > > ejemplo,
> > > > > > > al submitir el formulario recibes el dato con un
> > > request.form("campo")
> > > > ,
> > > > > > > deberás crear tu sentencia sql, abrir una conexión y
> > ejecutarla
> > > la
> > > > > > > conexión con la que hayas abierto el recordset original ya


no
> > estará
> > > > > > > disponible... aun cuando no la hayas cerrado antes Con
> > respecto
> > > a
> > > > > como
> > > > > > > se manejan las actualizaciones... no importa como hayas
filtrado
> > el
> > > > > > > recordset original. tu sentencia sql de actualización
deberá
> > > > incluir
> > > > > > la
> > > > > > > clave para que ADO erncuentre el registro que quieres
> > > actualizar.
> > > > > > >
> > > > > > > Si tenemos un recordset así: "Select campo1,campo2, campo3
from
> > > > ejemplo"
> > > > > > >
> > > > > > > Y después quieres actualizar determinado registro tu sql
> será
> > > algo
> > > > > > asi:
> > > > > > > "update ejemplo set campo2 = 'aaaaa' where campo1='algo'"
> > > > > > >
> > > > > > > Sashka
> > > > > > >
> > > > > > > "Hernán Castelo" escribió en
el
> > > > mensaje
> > > > > > > news:
> > > > > > > > gracias por responder :
> > > > > > > >
> > > > > > > > Si el recordSet está en la PC del cliente
> > > > > > > > no puede una persona
> > > > > > > > abrir ese recordSet de ninguna manera???
> > > > > > > > a eso me refiero cuando pregunto si es seguro
> > > > > > > >
> > > > > > > > Por eso mismo pregunto
> > > > > > > > el servidor mantiene de alguna manera
> > > > > > > > una lista de dónde están sus recordSets desconectados
> > > > > > > > es decir cómo valida que al reconectar
> > > > > > > > el recordSet sea el mismo enviado la primera vez
> > > > > > > > (no me refiere a los cambios o inserciones
> > > > > > > > sino al recordSet mismo)
> > > > > > > >
> > > > > > > > Luego
> > > > > > > > quién gestiona las actualizaciones ?
> > > > > > > > o sea quién gestiona la autenticidad de la
> > > > > > > > conexión/ re-conexión
> > > > > > > > el IIS?
> > > > > > > >
> > > > > > > > Y cómo se manejan las actualizaciones
> > > > > > > > por clave (primary key)?
> > > > > > > > y si el recordSet estaba filtrado
> > > > > > > > por una condición especial?
> > > > > > > > por ej, eran todos los datos
> > > > > > > > de una sola persona,
> > > > > > > > por lo tanto no figura el ID de la persona??
> > > > > > > > cómo se actualizan esos datos ??
> > > > > > > >
> > > > > > > > gracias nuevamente
> > > > > > > > espero que ahora se comprenda
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > atte,
> > > > > > > > Hernán Castelo
> > > > > > > > UTN - Buenos Aires
> > > > > > > > . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > > .
> > > > > > > .
> > > > > > > > . . . .
> > > > > > > >
> > > > > > > > "Sashka" escribió en el


mensaje
> > > > > > > > news:
> > > > > > > > > En asp no tienes otra opción que trabajar con recordset
> > > > > > desconectados...
> > > > > > > > no
> > > > > > > > > entiendo tu duda tu abres una conexión, creas un
> recordset
> > y
> > > > > haces
> > > > > > > > algo
> > > > > > > > > con él, normalmente lo "pasas" a una tabla html y


cierras
el
> > > > > recordset
> > > > > > y
> > > > > > > > la
> > > > > > > > > conexión todo antes de que se ejecute nada en el
> > cliente
> > > > si
> > > > > > > dejas
> > > > > > > > la
> > > > > > > > > conexión y el recordset abiertos, lo único que logras es
> > > > sobrecargar
> > > > > > el
> > > > > > > > > servidor pues desde el cliente son inacesibles.
> > > > > > > > >
> > > > > > > > > Sashka
> > > > > > > > >
> > > > > > > > > "Hernán Castelo"


escribió
en
> > el
> > > > > > mensaje
> > > > > > > > > news:#
> > > > > > > > > > los RS desconectados...
> > > > > > > > > > entiendo que le alivia recursos al servidor
> > > > > > > > > > pero son seguros?
> > > > > > > > > > no son suceptibles de ser manipulados?
> > > > > > > > > > quién gestiona los Updates?
> > > > > > > > > > queda en el servidor
> > > > > > > > > > alguna especie de puntero al RS desconectado
> > > > > > > > > > (alojado en el cliente) ??
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > gracias de antemano
> > > > > > > > > > por los comentarios
> > > > > > > > > >
> > > > > > > > > > atte,
> > > > > > > > > > Hernán Castelo
> > > > > > > > > > UTN - Buenos Aires
> > > > > > > > > > . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > > .
> > > > > > .
> > > > > > > > .
> > > > > > > > > .
> > > > > > > > > > . . . .
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>


Respuesta Responder a este mensaje
#20 danicastillo
27/10/2003 - 18:40 | Informe spam
na Shaska explicas muy bien =) (por eso te leo jeje) lo que pasa esq igual
entre todos estamos liandolo mas q si hubieras seguido tu jajaja pero bueno
al final almenos xarramos ;-)

ademas asi liamos tambien a Jhonny que estaba demasiado tranquilo, apenas
cambia ya su nombre en el mesenger... mala señal jajaja

abrazos para todos (a repartir!)
dani.



-o|o|--
-o|o| dani castillo
-o|o| http://www15.brinkster.com/danic/
-o|o| tutorial y trucos asp, vb, diseño
-o|o|--
"Sashka" escribió en el mensaje
news:
Hernan espero que esté todo más claro... los maestros lo explican mejor


que
yo :))

Sashka

"danicastillo" escribió en el
mensaje news:ed1$
> creo que tienes un error de concepto basico
>
>
> veamos, tu tienes una web asp , que muestra por ejemplo un formulario


con
un
> registro de la base de datos, para que el cliente lo modifique ¿vale?
>
> los pasos son estos:
>
> en el servidor (ojo)
> 1 abro el recordset
> 2 leo los datos del registro
> 3 con asp compones una pagina web
> 4 cierras el recordset
> 5 esa pagina web es enviada al cliente, como un html estatico
>
> (los pasos son un poco mas difusos q todo eso, la pagina la compones y
> envias al mismo tiempo)
>
> ten en cuenta que todo eso se ha hecho en el servidor, la lectura del
> recordset incluida, al cliente aun no ha llegado nada en este punto
>
>
> el cliente:
> 1 recibe una pagina web estatica (html puro y duro) con un formulario y
unos
> datos que son mostrados estaticos
> 2 cambia esos datos
> 3 aprieta a enviar el formulario
>
> el cliente no recibe ningun recordset, nada que ver con conexiones a


bases
> de datos ni nada, para el cliente es una pagina web html con un


formulario
>
> el servidor de nuevo:
> 1 recibe los datos del formulario
> 2 abre un recordset insertando esos datos (insert into...) o lo que sea
>
>
> en todo el proceso el recordset reside siempre en el servidor, nunca


pasa
al
> cliente
>
>
> -o|o|--
> -o|o| dani castillo
> -o|o| http://www15.brinkster.com/danic/
> -o|o| tutorial y trucos asp, vb, diseño
> -o|o|--
> "Hernán Castelo" escribió en el mensaje
> news:
> > gracias Jhonny,
> > trataré de cerrar también el RS
> > lo más pronto posible entonces!
> >
> > mi mayor preocupación es saber
> > si esta es la manera habitual de tratar
> > la actualización de los datos:
> > 1- cliente pide los datos
> > 2- me traigo un recordSet
> > 3- devuelvo el RS con Response.write
> > 4- examino los Request.Form("campo")
> > para saber qué actualizar y qué no
> >
> > hasta luego
> > atte,
> > Hernán Castelo
> > UTN - Buenos Aires
> > . . . . . . . . . . . . . . . . . . . . . . . .
.
> .
> > . . . .
> >
> > "Jhonny Vargas P." escribió en el
> mensaje
> > news:
> > > Hola Hernán,
> > >
> > > La idea es tener el menor tiempo posible una conección con la base


de
> > datos,
> > > es más, los recordset también deberían durar el menor tiempo posible


e
> > > utilizar matrices y luego desactivarlas.
> > >
> > > Los Recordset te sirven, exclusivamente para traer información de tu
> base
> > de
> > > datos y luego mostrarla. Por lo tanto no sé para que necesitas un
> > Recordset
> > > desconectado (que nunca lo he visto en el web).
> > >
> > > Te doy un ejemplo de un recordset que dura muy poco abierto:
> > >
> > > Dim objRec, objCon, Datos
> > > Set objCon = Server.CreateObject("ADODB.Connection")
> > > objCon.Open "String de coneccion"
> > >
> > > Set objRec = objCon.Execute("Select * from tabla")
> > >
> > > Datos = objRec.GetRows() 'transformar los datos a una matriz
> > >
> > > Set objRec = Nothing
> > > objCon.Close
> > > Set objCon = Nothing
> > >
> > >
> > > Luego te dedicas a pasar estos valores al web.
> > >
> > > 'Estas funciones te entregan el maximo y minimo de una matriz con


dos
> > > dimensiones.
> > > For Fila = LBound(Datos) To UBound(Datos)
> > > Response.Write Datos(0, Fila) & ", " & Datos(1, Fila) & "<br>"
> > > Next
> > >
> > > Todo lo que te he dicho son recomendaciones para que tengas un buen
> > proceso
> > > con el servidor y no lo colapses fácilmente
> > >
> > > Espero que te sirva.
> > >
> > >
> > > Saludos,
> > > Jhonny Vargas P. [MS MVP-ASP]
> > > Santiago de Chile
> > >
> > >
> > > "Hernán Castelo" wrote in message
> > > news:
> > > > Shaska,
> > > > a ver si entiendo:
> > > >
> > > > - Usar una sola página ASP
> > > > - Sumbitir a la misma página preguntando por los Requests vacíos
> > > > - De ningún modo puedo volver a "reabrir" el recordset para


leerlo,
> > > > pero puedo utilizar los Request.campo( x )
> > > >
> > > > los RS desconectados solo se distinguen por:
> > > > RS.recordSetLocation= adUseClient ??
> > > >
> > > > ...no comprendo aún
> > > > la utilidad del RS desconectado
> > > >
> > > > debo entender que se utilizan
> > > > para no recargar al servidor de datos entonces??
> > > >
> > > >
> > > > gracias nuevamente
> > > >
> > > > atte,
> > > > Hernán Castelo
> > > > UTN - Buenos Aires
> > > > . . . . . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > . . . .
> > > >
> > > > "Sashka" escribió en el mensaje
> > > > news:
> > > > > Efectivamente... eso es lo que te vengo diciendo.. ya no puedes
> > > consultar
> > > > > ese cursor con respecto a usar rs enlazados... yo nunca lo


he
> > > > visto
> > > > > a no ser que exista algún ocx pero como te digo cuando la
> pagina
> > > está
> > > > > cargada. está del lado del cliente y al submitirla es como


si
se
> > > > cargara
> > > > > por primera vez... eso lo manejas preguntando por los request


que
> > serán
> > > > > cadena vacía la primera vez... y tendrán valor las


siguientes
> > > > >
> > > > > Sashka
> > > > >
> > > > > "Hernán Castelo" escribió en el
mensaje
> > > > > news:e$
> > > > > > gracias Sashka
> > > > > > ah, muy bien
> > > > > > yo pensaba que el RS quedaba de alguna forma
> > > > > > escrito en el disco del cliente... qué suerte que no
> > > > > >
> > > > > > pero estoy algo confundido
> > > > > >
> > > > > > yo hasta ahora lo único sé hacer es
> > > > > > crear el RS y mandarlo al cliente con Response.Write
> > > > > > luego, cuando el usuario submita el form
> > > > > > ya no puedo consultar ese cursor
> > > > > > porque yo escribí Html
> > > > > >
> > > > > > veo que se utilizan RS enlazados a datos
> > > > > > o bien RS de "ADOR" o "ADOC"...
> > > > > > vos hablás de alguno de esos casos (enlazados)?
> > > > > >
> > > > > > me pasarías algún ejemplo o link
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > atte,
> > > > > > Hernán Castelo
> > > > > > UTN - Buenos Aires
> > > > > > . . . . . . . . . . . . . . . . . . . . .


.
> .
> > .
> > > > .
> > > > > .
> > > > > > . . . .
> > > > > >
> > > > > > "Sashka" escribió en el mensaje
> > > > > > news:
> > > > > > > El recordset no llega nunca al cliente al cliente llega


el
> > html
> > > > con
> > > > > > los
> > > > > > > datos que tu hayas escrito en él leyendo el recordset.


es
> como
> > > > > cuando
> > > > > > > ves el código fuente de una página asp sólo verás el


html
> > > > > generado...
> > > > > > no
> > > > > > > hay forma de "reconectarse"... si tu presentas los datos de


un
> > > > registro
> > > > > en
> > > > > > > un formulario y luego miras en el código fuente, verás que


no
> hay
> > > > > ninguna
> > > > > > > referencia al recordset... y su el usuario cambia algun


dato,
> por
> > > > > ejemplo,
> > > > > > > al submitir el formulario recibes el dato con un
> > > request.form("campo")
> > > > ,
> > > > > > > deberás crear tu sentencia sql, abrir una conexión y
> > ejecutarla
> > > la
> > > > > > > conexión con la que hayas abierto el recordset original ya


no
> > estará
> > > > > > > disponible... aun cuando no la hayas cerrado antes Con
> > respecto
> > > a
> > > > > como
> > > > > > > se manejan las actualizaciones... no importa como hayas
filtrado
> > el
> > > > > > > recordset original. tu sentencia sql de actualización
deberá
> > > > incluir
> > > > > > la
> > > > > > > clave para que ADO erncuentre el registro que quieres
> > > actualizar.
> > > > > > >
> > > > > > > Si tenemos un recordset así: "Select campo1,campo2, campo3
from
> > > > ejemplo"
> > > > > > >
> > > > > > > Y después quieres actualizar determinado registro tu sql
> será
> > > algo
> > > > > > asi:
> > > > > > > "update ejemplo set campo2 = 'aaaaa' where campo1='algo'"
> > > > > > >
> > > > > > > Sashka
> > > > > > >
> > > > > > > "Hernán Castelo" escribió en
el
> > > > mensaje
> > > > > > > news:
> > > > > > > > gracias por responder :
> > > > > > > >
> > > > > > > > Si el recordSet está en la PC del cliente
> > > > > > > > no puede una persona
> > > > > > > > abrir ese recordSet de ninguna manera???
> > > > > > > > a eso me refiero cuando pregunto si es seguro
> > > > > > > >
> > > > > > > > Por eso mismo pregunto
> > > > > > > > el servidor mantiene de alguna manera
> > > > > > > > una lista de dónde están sus recordSets desconectados
> > > > > > > > es decir cómo valida que al reconectar
> > > > > > > > el recordSet sea el mismo enviado la primera vez
> > > > > > > > (no me refiere a los cambios o inserciones
> > > > > > > > sino al recordSet mismo)
> > > > > > > >
> > > > > > > > Luego
> > > > > > > > quién gestiona las actualizaciones ?
> > > > > > > > o sea quién gestiona la autenticidad de la
> > > > > > > > conexión/ re-conexión
> > > > > > > > el IIS?
> > > > > > > >
> > > > > > > > Y cómo se manejan las actualizaciones
> > > > > > > > por clave (primary key)?
> > > > > > > > y si el recordSet estaba filtrado
> > > > > > > > por una condición especial?
> > > > > > > > por ej, eran todos los datos
> > > > > > > > de una sola persona,
> > > > > > > > por lo tanto no figura el ID de la persona??
> > > > > > > > cómo se actualizan esos datos ??
> > > > > > > >
> > > > > > > > gracias nuevamente
> > > > > > > > espero que ahora se comprenda
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > atte,
> > > > > > > > Hernán Castelo
> > > > > > > > UTN - Buenos Aires
> > > > > > > > . . . . . . . . . . . . . . . . . . . .
.
> .
> > > .
> > > > .
> > > > > > .
> > > > > > > .
> > > > > > > > . . . .
> > > > > > > >
> > > > > > > > "Sashka" escribió en el


mensaje
> > > > > > > > news:
> > > > > > > > > En asp no tienes otra opción que trabajar con recordset
> > > > > > desconectados...
> > > > > > > > no
> > > > > > > > > entiendo tu duda tu abres una conexión, creas un
> recordset
> > y
> > > > > haces
> > > > > > > > algo
> > > > > > > > > con él, normalmente lo "pasas" a una tabla html y


cierras
el
> > > > > recordset
> > > > > > y
> > > > > > > > la
> > > > > > > > > conexión todo antes de que se ejecute nada en el
> > cliente
> > > > si
> > > > > > > dejas
> > > > > > > > la
> > > > > > > > > conexión y el recordset abiertos, lo único que logras es
> > > > sobrecargar
> > > > > > el
> > > > > > > > > servidor pues desde el cliente son inacesibles.
> > > > > > > > >
> > > > > > > > > Sashka
> > > > > > > > >
> > > > > > > > > "Hernán Castelo"


escribió
en
> > el
> > > > > > mensaje
> > > > > > > > > news:#
> > > > > > > > > > los RS desconectados...
> > > > > > > > > > entiendo que le alivia recursos al servidor
> > > > > > > > > > pero son seguros?
> > > > > > > > > > no son suceptibles de ser manipulados?
> > > > > > > > > > quién gestiona los Updates?
> > > > > > > > > > queda en el servidor
> > > > > > > > > > alguna especie de puntero al RS desconectado
> > > > > > > > > > (alojado en el cliente) ??
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > gracias de antemano
> > > > > > > > > > por los comentarios
> > > > > > > > > >
> > > > > > > > > > atte,
> > > > > > > > > > Hernán Castelo
> > > > > > > > > > UTN - Buenos Aires
> > > > > > > > > > . . . . . . . . . . . . . . . . . .


.
.
> > .
> > > .
> > > > > .
> > > > > > .
> > > > > > > > .
> > > > > > > > > .
> > > > > > > > > > . . . .
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida