close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 15 years ago

Last modified 15 years ago

#882 new task

Desarrollo de una API secuencial para recorrer consultas a bases de datos

Reported by: Víctor de Buen Remiro Owned by: Jorge
Priority: normal Milestone: Mantainance
Component: Database Version: 2.0.1
Severity: major Keywords:
Cc:

Description (last modified by Víctor de Buen Remiro)

Algunas veces una consulta a una base de datos devuelve un número excesivamente grande de registros que necesitamos recorrer pero que no caben en la memoria RAM por lo que no es posible usar DBTable.

Sería de gran utilidad disponer de una API como la siguiente

//Ejecuta una consulta en la base de datos y devuelve el 
//identificador del manejador de registros. Si se pasa un nombre 
//de estructura se usará luego para devolver los registros con
//DBGetNextRegister. En otro caso se comprobará si todos los campos
//devueltos tienen nombre único y en tal caso se devolverá un
//conjunto indexado por nombre para cada registro obtenido.
  Real query_id = DBQuery.Open(Text query  [, Text structName = ""])

//Se salta <jump> registros y devuelve el siguiente. Por defecto no
//se salta ninguno y devuelve el siguiente de forma secuencial. 
//Cuando ya no hay más registros devuelve el conjunto vacío y se 
//cierra la consulta. 
  Set reg = DBOpen.Next(Real query_id [, Real jump=0])

Change History (1)

comment:1 Changed 15 years ago by Víctor de Buen Remiro

Description: modified (diff)
Note: See TracTickets for help on using tickets.