none
CUIDAR EL TAMAÑO DE LOS DATASET RRS feed

  • Pregunta

  • TENGO UN PROYECTO EN EL CUAL TENGO CREADO SOLO UN DATASET CON EL ASISTENTE Y ESTE DATASET
    TIENE 40 TABLAS(QUE SON TODAS LAS TABLAS DE MI BASE DE DATOS).
    CUANDO EJECUTO EL PROGRAMA ES MEDIO LERDO PARA ARRANCAR.
    ME GUSTARIA SI ME PUEDEN EXPLICAR LA INIZIALIZACION DE LOS DATASET EN LA APLICACION, ES DECIR
    CUANDO SE CARGAN EN MEMORIA, SI ME CONVIENE HACER UN DATASET POR CADA TABLA Y EN CADA FORMULARIO
    POR EJEMPLO EN EL DE CLIENTES USAR EL DATASET CLIENTESDATASET, EL CUAL TENGA SOLO LA TABLA
    QUE ME HACE FALTA PORQUE COMO LO ESTOY HACIENDO AHORA TENGO EN MEMORIA EL DATASET CON LA BASE DE DATOS
    COMPLETA EN MI MEMORIA

    YO VEO QUE POR CODIGO LA MAYORIA CREA UN DATASET Y UN DATATABLE DE LA TABLA QUE
    NECESITA USAR . YO EN CAMBIO USO UN SOLO DATASET PARA TODO , ESO ES MALO?
    QUE ES LO QUE ME ACONSEJAN??

    lunes, 25 de junio de 2007 18:30

Respuestas

  • Hola Rodrigo

     

    La utilidad de los datasets no es para cargar a memoria la base completa, ya que además de tardar mucho tiempo, una vez allí no dispones de mecanismos poderosos para hacer consultas sobre el dataset cargado.

     

    El uso típico es utilizar distintos datasets para cada "vista lógica" que necesitas de la base de datos en un momento dado, por ejemplo:

    • al leer una factura que tiene items, cargas en un dataset solamente su registro de cabecera (un registro de tabla Factura) y los registros de detalle correspondientes a la misma (N registros de la tabla FacturaItems)
    • al leer los datos de un cliente, cargas en un dataset solamente el registro que corresponde de la tabla Clientes (un registro)
    • al emitir un reporte de todos los comprobantes en un rango de fechas dado, cargas en un dataset todos los registros de la tabla Comprobantes cuya fecha está entre las especificadas.

    Saludos,

    Jose

    ----

    MCP, Tercer Planeta (Buenos Aires) http://www.buenaspracticas.net

       Colabora con el foro: Si la respuesta te es de utilidad marca la pregunta como respondida.

     

    lunes, 25 de junio de 2007 20:50

Todas las respuestas

  • Hola Rodrigo

     

    La utilidad de los datasets no es para cargar a memoria la base completa, ya que además de tardar mucho tiempo, una vez allí no dispones de mecanismos poderosos para hacer consultas sobre el dataset cargado.

     

    El uso típico es utilizar distintos datasets para cada "vista lógica" que necesitas de la base de datos en un momento dado, por ejemplo:

    • al leer una factura que tiene items, cargas en un dataset solamente su registro de cabecera (un registro de tabla Factura) y los registros de detalle correspondientes a la misma (N registros de la tabla FacturaItems)
    • al leer los datos de un cliente, cargas en un dataset solamente el registro que corresponde de la tabla Clientes (un registro)
    • al emitir un reporte de todos los comprobantes en un rango de fechas dado, cargas en un dataset todos los registros de la tabla Comprobantes cuya fecha está entre las especificadas.

    Saludos,

    Jose

    ----

    MCP, Tercer Planeta (Buenos Aires) http://www.buenaspracticas.net

       Colabora con el foro: Si la respuesta te es de utilidad marca la pregunta como respondida.

     

    lunes, 25 de junio de 2007 20:50
  • Buenas!!

    Estoy de acuerdo con Jose con respecto a que esa no es la finalidad de los dataset ya que como efectivamente está ocurriendo, saturan la memoria del pc y su rendimiento disminuye. Sin embargo, aprovechando la oportunidad que se presentó con este tema, quisiera saber cuál es la capacidad máxima, el tamaño o el número de registros que acepta un datatable; sé que no puede ser demasiado grande pero no se hasta que punto es ese demasiado.

    Si alguien me puede ayudar le agradezco demasiado.

    martes, 31 de julio de 2007 14:11