Velocidad con ODBC de Visual Fox

Hola leí una de tus respuesta en todo expertos, y quería saber si me puedes ayudar: Tengo mi base de datos en un servidor donde se conectan mis usuarios, realizo mi conexión al servidor por el ODBC de visualfox, mi programa también esta en visualfox, abro mi conexión y hago un select de los datos que busco pero con una tabla de 10,000 es demasiado lenta la búsqueda tarda hasta 2 minutos, la red esta bien configurada, pues cuando se tenían como 1,000 la búsqueda era rápida y ahora con esa gran cantidad de registros es lenta la búsqueda que pueda hacer para mejorar la velocidad de búsqueda pues de los 10,000 reg. Tengo que seleccionar no más de 5 registros ..

1 respuesta

Respuesta
1
Tu búsqueda para 10,000 registros no debe de ser lenta, yo tengo tablas con más de 10,000 y las búsqueda es rápida, te hago estas preguntas:
* tu red es de 10,000 mbps
* utiliza conexion directa en vez de odbc..
public nConexion
cConexion = "Driver={SQL Server};Server=algo;Database=namer;Uid=Efrain;Pwd=password"
nConexion = SQLSTRINGCONNECT(cConexion)
* limita tu busqueda, eso de llamar a toda la tabla para nada mas buscar 5 registros creo que no es buena tu consulta.
* utiliza procedimientos almacenados en tu sql, y mandalos llamar desde tu foxpro (esta opcion casi no la uso).
Suerte.
Si la red esta a 10,000 mbps, y la conexión si la hago por ODBC, mi base de datos esta en FOX no esta en SQL, como quedaría la instrucción para una base de datos en VisualFox:
Esta como quedaría ya que pues no tengo varios parámetros que aquí se ocupan como nombre del servidor no tengo ya que es una PC, no hay ID ni password .. que si utiliza el SQL aquí no los tengo por que no se ocupan para la base de datos de Fox, como quedaría
public nConexion
cConexion = "Driver={SQL Server};Server=algo;Database=namer;Uid=Efrain;Pwd=password"
nConexion = SQLSTRINGCONNECT(cConexion)
No me queda claro tu pregunta, debes de tener un nombre de donde esta el sql server instalado, si es local pues entonces ponle localhost como server, el dabatabase es el nobre de tu base de datos en el sql server, NO OBSTANTE el nombre con el que te puedes conectar a tu base de datos...
Lo que pasa es que mi base de datos no esta en SQL .. es una base de datos creado con visual fox e instalada en una PC con windows XP, entonces no tengo nobre de servidor ni password para accesar las tablas ...
La cadea de conexión seria algo como esto.
DSN=Visual FoxPro Database;UID=;PWD=;SourceDB=E:\Sistemas Efrain\Peticiones\Cheques Francis2\general.dbc;SourceType=DBC;Exclusive=No;BackgroundFetch=Sí;Collate=Machine;

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas