Buenos dias todos.
Hace un tiempo estoy trabajando en un programa que controla dos bases de datos, el problema es que una de esas dos bases tiene 200. 000 records y cuando quiero traerlos todos al datagridview me toca primero mandarlos al dataset y luego al datagridview y este proceso se hace muy lento y ademas muchas veces el programa llega a puntos criticos por el uso de la memoria RAM, me preguntaba si hay alguna forma para mandar los datos al datagridview sin necesidad de mandarlo al dataset?
Por su ayuda muchas gracias.
Datos en datagrid sin usar dataset?
Hola Jorge, bueno yo he hecho pruebas con respecto a la performance de los objetos DataSet, DataTable y BindingList. Con 65000 registros el más rapido es BindingList(Tiempo: 2seg. ), DataTable(Tiempo: 5seg) y DataSet(Tiempo: 9-11 seg.)... Espero que esta información te sirva como para que puedas elegir con que tipo de objetos trabajar... Está demás decirte que yo te recomendaría trabajar con bindingList.
Suerte...
Bueno puedes usar un datatable, creo q maneja super bien.... No he tenido lios con este
Este es un problema muy común en el acceso a los datos al porraso, primeramente el punto clave es para que traer todos los datos si lo puedes hacer por partes, me comentas que tu aplicación accede a dos base de Datos, las base de Datos esta en Oracle o SQL server 2005, si es en SQL 2005 podemos particionar las tablas para una mayor performace, te recomendaria un DataSet pero debemos ser cuidadosos al utilizarlo un mal uso nos conyeva a problemas de performance y utliza vistas , procedimientos almacenado y sobre todo crear bien tus indices en tu base de Datos.
La Utilizacion de un DataSet a esa cantidad de Datos es sumante importante en hacer una estrategia de como los usuario van a manipular esos datos una vez vizualizados en el datagridview, te recomiendo que utilices thread al momento de jalar esos datos de la Base de Datos.
PD.
He realizado una carga de 1 Millón de registros en un DataSet pero de manera particionada.
Buenas noches Elmer, tu idea de particionar los datos es muy buena, la cuestion es q yo lo estoy haciendo solo que me toca traer muchos datos al ser particionados, en este momento mi programa esta rapido ya q lo he limitado para que mis datos traidos sean muy especificos la cuestion es q he visto en muchos programas que traen "muchos datos" y de una manera muy rapida, pero noto q lo que hace es traer por ejemplo 20 records y cuando el usuario baja a ver los demas records en el datagrid trae mas datos a medida q va avanzando, me gustaria mucho si me pudieran dar una idea de como hacer esto, ya que nos funcionaria para muchas cosas y hacer nuestras aplicaciones cada dia mejor.
Por su ayuda gracias.
Gracias Carlos por tu informacion, apenas pueda hare unas pruebas y les informo.
Hola xD interesante carlos, pero porke no utilizas Generics es bastante eficienmte