FoxPro/Visual FoxPro - Buffering

   
Vista:

Buffering

Publicado por victor perez (278 intervenciones) el 15/08/2010 05:00:40
Amigos,

Recien en este forum lei acerca de usar la clausula Buffering en la sentencia Select de SQL.

Yo hago las consultas mediante el siguiente codigo

Select * ;
from AlmCt ;
with (Buffering=.T.);
where &_key;
order by Codigo;
into cursor _Base

Sele _Base
Thisform.PgfFicha.Page4.lstCltes.rowsource="Codigo,Nombres,Apellidos,Nacimiento,Cedula,Seguro,Telefono,Numero,situacion"

Thisform.PgfFicha.Page4.lstcltes.requery
Thisform.PgfFicha.Page4.lstcltes.refresh
Thisform.PgfFicha.Page4.lstcltes.setfocus

Habia notado que cuando la consulta la hacia desde una terminal era algo lento...hoy le agregue la clausula "with (buffering=.t.)" y la trabaje por internet desde de mi casa. Es decir me conecte a la computadora de mi clinica y alli la maneje desde mi casa y corri el programa y con esta clausula la busqueda y consulta es super veloz.

Quisiera saber si la Clausula Buffering .t. no tiene ninguna implicacion negativa ?

Saludos y espero puedan ayudarme al respecto.

Victor,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Buffering

Publicado por es_binario (757 intervenciones) el 15/08/2010 06:01:03
Si mira lo que ocurre con el buffering si te fijas la primer consulta es lenta pero las demas son muy rapidas la razon es que con la clausula buffering verdadero toma los datos de buffer (tablas temporales de foxpro que usa para mostrar los datos encontrados) y no directamente de la tabla por eso tu tabla ya no tiene que viajar por la red por que hace la consulta sobre la tabla que viajo la primera vez a tu pc.

Bueno el unico incoveniente es que si otro usuario ha vendido algo o se dio de baja algun producto tu no lo vas a saber ya que tienes los datos de buffer y no los datos de la tabla es decir basados en tu primer consulta, pero si es una aplicacion mono usuario y no esta en red, esta bien, y tambien lo podrias usas sobre tablas que no tienen cambios frecuentes en sus datos.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Buffering

Publicado por Victor Perez (278 intervenciones) el 16/08/2010 17:44:26
Gracías por tu aclaracion. En realidad la consulta se hace una a la vez...es decir, consulto la base de pacientes, extraigo la info y cierro la base...luego al atender otro paciente hago lo mismo. Por lo tanto, tal vez el buffering no me es de utilidad ya que la tabla de pacientes se actualiza constantemente.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar