FoxPro/Visual FoxPro - Que sera mejor usar??

   
Vista:

Que sera mejor usar??

Publicado por Loly (103 intervenciones) el 31/12/2010 16:43:12
Algun consejo mejorar la organización de datos en MYSQL, así como también para buscar los mismos.

**** CODIGO 1 ***************************
lBusca1="SELECT * FROM MyTabla order by xcampo"
Try
SqlExec(Con,lBusca1,'cursor1')
Catch
MessageBox('Servidor induspuesto...")
EndTry

Select MyTabla
Go Top
***********************************************
********CODIGO 2 ***************
lBusca1="SELECT * FROM MyTabla"
Try
SqlExec(Con,lBusca1,'cursor1')
Catch
MessageBox('Servidor induspuesto...")
EndTry

Select MyTabla
Index On xcampo to idcampo
set order to idcampo
***************************************************
estoy tomando el consejo que viene en:
http://www.fpress.com/revista/Num0706/art.htm
en el punto 4 y 5... pero no lo comprendo bien...

Gracias... por su opinion....
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:Que sera mejor usar??

Publicado por Ramoncito (81 intervenciones) el 31/12/2010 16:46:08
Loly creo que hay un error en tu codigo.. al escribirlo aqui... porque no puedes cargar la tabla de mysql sino el cursor... así..

lBusca1="SELECT * FROM MyTabla order by xcampo"
Try
SqlExec(Con,lBusca1,'cursor1')
Catch
MessageBox('Servidor induspuesto...")
EndTry

Select CURSOR1
Go Top

Creo que es así... no se que opinen los demas....
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:Que sera mejor usar??

Publicado por victor perez (278 intervenciones) el 02/01/2011 02:59:21
Hola Ramoncito,

Si, tù estas en lo correcto. Al hacer la conexion expresa el nombre del Cursor.

Con respecto a la pregunta de Loly, creo que Yo me iria por la primera opcion porque en la segunda debe indexar la tabla y al hacerlo no podra lograrlo si trabaja en ambiente multiusuario.

Si decide usar la segunda opcion, entonces al indexar debe poner asi:

Index on CAMPO TAG NOMBRE_QUE_eLIJA

Si lo hace asi, entonces no tendra inconveniencia en el ambiente multiusuario.

De todas formas, yo me iria con la primera opcion puesto que estas usando todas las posibilidades o las bondades que ofrece el ambiente MYSQL.

Victor - Panama
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:Que sera mejor usar??

Publicado por Amado Garcia (66 intervenciones) el 03/01/2011 01:28:36
Hay que considerar en que se va a usar la tabla que vas a traer del servidor a tu cursor..
si la quieres para realizar busquedas, entonces en mi caso yo hago la indexación, porque de esta manera podrás usar: SEEK.

Al Agregar registros en una tabla de MYSQL en mi caso yo solo saco la clave que voy a comparar con el registro que voy a ingresar... ejemplo si tengo una tabla de articulos que tiene 10 campos... yo solo obtengo la que voy a comparar: ejemplo: CVEREG

**********************
agrego un dato en: txtClave
SqlExec(Con,'SELECT CVEREG FROM ARTICULOS",'MICURSOR')

SELECT MICURSOR
Index on CVEREG tag idcve

IF Seek((Alltr(txtClave)))
MessageBox('ya esta registrado')
Else
..... prosigue la captura..
ya que tienes todo capturado..haces la cadena con los 10 campos a insertar
Endif
*******************
En Caso de ser datos a imprimir, se extraen del servidor usando Order By xCampo y podrás enviarlos a Crystal Report... y listo..
*************************
En caso de Solo Mostrar los Datos en un Formulario o Grid también puedes usar Order By
******
Saludos desde Cd. Anahuac, Nuevo León Mexico...
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