La Web del Programador: Comunidad de Programadores
 
    Pregunta:  2215 - REINDEXAR (ORDENAR DATOS)
Autor:  Esteban Marín Cervantes
Hola! Cómo están? pués espero que estén bien, mi pregunta es la siguiente:

Resulta que estoy realizando una aplicación que me piden que exista la opción de poder reindexar (ordenar los datos de la Base de datos), la Base de datos la hice en Microsoft Access 97, ya las tablas se encuentran relacionadas. Realmente no se si la Base de datos hace esta operación automáticamente, hice un rastreo en la ayuda de Visual Basic 5.0 y no encontré ninguna instrucción de REINDEX. Me gustaría que me aclaren si se puede reindexar (si se puede, le agradezco que me asesoren cómo es?).

Gracias anticipadas.

  Respuesta:  Francisco Luna
Las operaciones de reindexacion se realizan automáticamente en la base de datos Access, previamente creados los indices en estas, asi que lo único que tienes que hacer es usarlas con el método seek, lo que no tengo claro es con que fin quieres ordenarlas, (por ejemplo: chequear existencia de un dato, busquedas rápidas, etc..)

  Respuesta:  David Airam Hernández Rodríguez
Esta respuesta te la iba a enviar hace bastante tiempo lo que pasa es que habían problemas en la web al enviar los datos. Bueno aquí la tienes.
Si usas un control tipo data lo haces con la propiedad *.sort o sea (data1.sort = "Campo" o data1.sort "Campo") una de esas dos es no me acuerdo muy bien, para el data control o una vase de datos abierta a pelo o sea con set papapaa. Si lo haces con un ado control o sea el adodc control es con la propiedad *.recordsource sería algop así: adodc1.recordsource = "instrucción SQL"
que es así:

*Las comillas no las cuentes, jejejeje.
Select from *"Tabla" order by "campo"

Por ejemplo:
adodc1.recordsource = select from *Pedidos order by Descripcion

Si la base de datos está abierta a pelo también te funcionan los procedimientos que te he dicho anteriormente.

DENADA Y UN SALUDO COLEGA, DAVID.

  Respuesta:  Eduardo Jiménez Vargas
Realmente no existe en visual basic la reindexación, cada vez que realizas una actualización a una tabla, esta actualiza automáticamente los indices aun que no los estes utilizando. Ahora bien, te recomiendo que si lo que quieres es utilizar ordenamiento con indices no existentes crees una sentencia SQL
Agregando la instrucción ORDER BY ó Crees un indice de paso con una sentencia SQL. Te recomiendo que leas la ayuda de SQL de Visual Basic

Si tienes alguna duda al respecto me pongo a tus ordenes.