Dataset trayendo todo?

17/02/2007 - 13:37 por Luisa | Informe spam
Hello a todos.

Soy novata en C# y empece hacer un form master detail por un ejemplo que vi
en un channel de microsoft pero veo que en ese ejemplo me trae todos los
registros y los mete a un dataset.
Me sorprendi porque siempre programo trayendo solo lo que necesito para
reducir trafico en la red. Pregunto, es que los datasets funcionan asi o
tienen algun tipo de paginacion incorporada?
Es necesario tener las datatables en un dataset? Da alguna ventaja?
Puedo usar las datatables directamente sin dataset?

Me disculpan si las preguntas son muy basicas pero cualquier ayuda les
agradezco.

Luisa




1) Es necesario tener las datatables en un dataset? Da alguna ventaja?

2) Como extraigo l

Preguntas similare

Leer las respuestas

#1 Juan Diego Bueno
17/02/2007 - 15:22 | Informe spam
"Luisa" escribió en el mensaje
news:%
Hello a todos.

Soy novata en C# y empece hacer un form master detail por un ejemplo que
vi en un channel de microsoft pero veo que en ese ejemplo me trae todos
los registros y los mete a un dataset.



Vamos por partes, como decía Jack el destripador:

Me sorprendi porque siempre programo trayendo solo lo que necesito para
reducir trafico en la red. Pregunto, es que los datasets funcionan asi o
tienen algun tipo de paginacion incorporada?



Los datasets son objetos que se basan en un modelo desconectado. Su función
teórica es reproducir total o parcialmente los objetos de tu sistema de base
de datos o incluso de varios simultáneamente. Esto se hace así, precisamente
por reducir el número de transferencias, que no el caudal. Los datasets
tienen sus datatables que pueden estar basada en tablas o vistas de tu base
de datos. De esta forma tu puedes paginar como desee, o traerte sólo los
registros deseados a un datatable

Puedes trabajar desconectadamente usando datatables reducidos hasta a un
solo registro, o usando datareaders, aunque estos están limitados a solo
lectura, con lo cual tendrías que utilizarlos en combinacion con sqlcommands
para inserción, actualización y borrado.

Es necesario tener las datatables en un dataset? Da alguna ventaja?


La ventaja en todo caso es que tu puedas aplicarles restricciones,
transacciones, etc...y que las tengas organizadas. También existen los
datasets tipados donde puedes agruparlas para trabajar con ellas, pero no es
necesario

Puedo usar las datatables directamente sin dataset?





2) Como extraigo l



Rellenando un datatable con un solo registro obtenido de una consulta que
devuelva únicamente esa fila o utilizando un datareader que funciona como un
cursor trabajando con los registros de uno en uno

Espero te haya servido

Saludos




Estoy utilizando la versión gratuita de SPAMfighter para usuarios privados.
Ha eliminado 6640 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!
Respuesta Responder a este mensaje
#2 Luisa
19/02/2007 - 14:12 | Informe spam

Los datasets son objetos que se basan en un modelo desconectado. Su
función teórica es reproducir total o parcialmente los objetos de tu
sistema de base de datos o incluso de varios simultáneamente. Esto se hace
así, precisamente por reducir el número de transferencias, que no el
caudal.




Con los datasets no se puede abrir digamos la conexion al cargar el programa
y cerrarla al final como haciamos en otros lenguajes?
Abrirla y cerrarla para cada acceso no ralentizaría mucho la aplicación?

Es necesario tener las datatables en un dataset? Da alguna ventaja?


La ventaja en todo caso es que tu puedas aplicarles restricciones,
transacciones, etc...y que las tengas organizadas.



Cuando dices restricciones te refieres a restricciones en la aplicacion, no
en el servidor?


tipados
Rellenando un datatable con un solo registro obtenido de una consulta que
devuelva únicamente esa fila o utilizando un datareader que funciona como
un cursor trabajando con los registros de uno en uno




O sea no es necesario tipar los datasets ni los datatables? Se puede
entonces acceder a las tablas del servidor con codigo generico, esto es, sin
tener definidas clases especificas tipadas?


Espero te haya servido




Claro que si y gracias por tu ayuda


Luisa
Respuesta Responder a este mensaje
#3 Juan Diego Bueno
19/02/2007 - 15:17 | Informe spam
Con los datasets no se puede abrir digamos la conexion al cargar el programa
y cerrarla al final como haciamos en otros lenguajes?
Abrirla y cerrarla para cada acceso no ralentizaría mucho la aplicación?



Puedes hacer eso mismo perfectamente con datasets, es decir... tu
puedes traerte todas las tablas con las que vayas a trabajar a
memoria, cambiar lo que desees y mandar las modificaciones a la base
de datos. Eso requeriría dos operaciones de apertura y cierre de
conexión: 1. para traer los datos del sgbd y otra para actualizarlos
con los cambios, de ahí que sea un modelo eminentemente desconectado.
Únicamente la primera vez que se accede a la conexión se nota en la
velocidad, posteriormente los accesos son más rápidos.

Cuando dices restricciones te refieres a restricciones en la aplicacion, no
en el servidor?


Bueno, me refería a que podrías aplicarle más restricciones a los
datos que obtienes de la base de datos. Obviamente son restricciones
de cliente, puesto que el servidor no sabe que existen. De todas
maneras, ya deberían estar bien definidas en el propio servidor.
Yo particularmente uso los datasets tipados para poder usar
databinding (asociacion de datos a controles) y para los informes
Crystal, entre otras cosas, aunque cuando yo aprendí .net usaba más la
clase dataset genérica. Creo que en www.desarrollaconmsdn.com tienes
una aplicación de ejemplo llamada msdn video que te muestra su
utilización. De todas maneras, mis conocimientos sobre esto son
totalmente empíricos, supongo que hay gente que te podría explicar
mucho mejor el por qué de su uso.




> tipados
> Rellenando un datatable con un solo registro obtenido de una consulta que
> devuelva únicamente esa fila o utilizando un datareader que funciona como
> un cursor trabajando con los registros de uno en uno

O sea no es necesario tipar los datasets ni los datatables? Se puede
entonces acceder a las tablas del servidor con codigo generico, esto es, sin
tener definidas clases especificas tipadas?



Si entiendo lo que creo que entiendo por código genérico... tienes las
clases genéricas dataset y datatable, las cuales puedes usar
libremente sin necesidad de usar datasets tipados. De hecho, son las
primeras clases que se enseñan cuando se comienza con ado.net.

Saludos
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida